对象、类、对象引用、对象的实例化
对象:谈到面向对象的程序设计,关于对象的定义方面的文章非常多。但明确地给出对象的定义或说明对象的定义的往往又很少或比较模糊,本人觉得原因在于没有搞清楚狭义上的对象和广义上的对象之区别。广义上讲面向对象的程序设计中的对象泛指一切事物,对象即万物。如果你还是感到稀里糊涂、一头雾水,别急,看完下面的全部内容再回头看看就明白了。
类:具有相同或相似性质的对象的抽象就是类。类本质上是对广义对象按一定规则的分组。比如我们把一切事物分为物质和意识,物质又可分为有生命和无生命的,有生命的又可分为:动物类、植物类、病毒类、微生物类等等。
对象的引用:对象的引用实质上是定义或声明一种对象类型的变量(即存放对象的变量)。由于在程序运行中需要在内存中开辟一定的空间用来存放对象中的数据,这个空间的大小取决于对象内数据的多少,你声明一个对象类型的变量就是通知内存给你开辟多少内存空间。打个不太恰当的比喻,你说:我要造汽车(声明一个汽车类),于是有人就给你准备钢材、轮胎等等(开辟内存)。
对象的实例化:本质上是定义一个狭义上的对象。拿上面造汽车的例子来说,你刚才只说造汽车(对象引用),而没说造什么样的汽车,这样你是不会造出汽车的,你要造车还要具体说明造什么样的车,完成这个工作就需要使用对象实例化。