我把面向对象程序设计简单的归纳为:“向对象发送消息”!
为什么叫向对象发送消息呢?因为当我们把现实中具有公共性质和功能(即方法)的具体的很多对象抽象出来封装成一个类时 ,其实我们的思考就是我们要怎样做能(即指挥)给这些具有公共性质和功能(即方法)的具体对象干某件事情呢。这就体现了面向对象的一个特性——封装。当我们把某一类具有公共性质和功能的事物进行封装之后就不再关心事物是具体怎样去干某件事情的,关心的是能不能指挥这类事物干某件事情(即该类事物具备要去干某件事情的功能吗)和怎样去指挥这类事物干某件事情 。我们就从事情的操作者变成了事情的指挥者。这一过程具体的体现就叫向对象发送消息! 当要给这类事物发送消息时我们只要指明是某个实例对象就行,即就把我们抽象出来的类再实例化成具体的某一个对象,再给这个具体的实例对象发送消息就行了。这个消息就是通常说的要访问某个对象的“属性或方法”。而当我们把一类事物封装成类以后就给这类隐性的贴了一个标签,这标签就是给外部说我这个类只能接受或说识别哪些消息不能接受或识别哪些消息。当外部一定要给我这类发送我不能接受的消息时,就会报错。不知这样理解行不,求指点。
|