8.2.1 类和对象的区别

类和对象是面向对象中的两个重要概念,初学者经常把类和对象混为一谈。类是对客观世界中事物的抽象,而对象是类实例化后的实体。例如,同样的汽车模型可以制造出不同的汽车,每辆汽车就是一个对象,汽车模型则为一个类。车牌号可以标识每辆汽车,不同的汽车有不同的颜色和价格,因此车牌号、颜色、价格是汽车的属性。图8-1描述了类和对象的关系。

图8-1 类和对象的关系

汽车模型是对汽车特征和行为的抽象,而汽车是实际存在的事物,是客观世界中实实在在的实体。因此,根据类的定义可以构造出许多对象。现实生活中可以看到很多这样的例子,如,按照零件模型可以制造出多个零件,按照施工图纸可以建造出多栋楼房。