“纯粹”的面向对象程序设计是什么样的?

(1)万物皆对象。可将对象想象成一种新型变量:它保存着数据,并可要求它能对自身进行操作。理论上讲,可从要解决的问题身上提出所有概念性的组件,然后在程序中将其表达为一个对象。

(2)每个对象都有自己的存储空间,可容纳其他对象,或者说通过封装现有对象,可制作出新的对象。所以,尽管对象的概念非常简单,但在程序设计中却可以达到任意复杂的高度。

(3)每个对象都属于某一个类型。根据语法,每个对象都是某一个类的实例,其中“类(Class)”是“类型(Type)”的同义词,一个类最重要的特征就是“能把什么消息发送给它”。

(4)同一类的所有对象都能接受相同的消息。这实际上是一种别有含义的说法。由于类型为“圆(Circle)”的一个对象也属于类型为“形状(Shape)”的一个对象,所以“圆”完全能接受“形状”发送给它的消息。这意味着可以让程序代码统一指挥“形状”,令其自动控制所有符合“形状”描述的对象,自然也包括圆。这一特性称为对象的“可替换行性”,也是OOP最重要的概念之一。

(5)程序是一大堆对象的组合,通过消息的传递,各对象就知道自己该做些什么。为了向对象发起请求,就需要向那个对象发送“一条消息”;更具体点讲,可以将消息想像成一个调用请求,它调用的是从属于该目标对象的一个子例程或者函数(方法)。

第一次博客记录,加油!!!

posted @ 2019-02-12 17:02  小摩托~  阅读(118)  评论(0)    收藏  举报