说说什么是面向对象设计方法

Alan Kay 总结了面向对象设计方法五大基本特征:

  1. 万物皆对象。它存储数据,并且可以对其“发出请求”执行某些操作。从理论上讲,我们总是可以从要解决的问题中抽象出概念性的组件,然后在程序中将其表示为一个对象。
  2. 程序是由一组对象组成的,它们彼此之间通过消息传递互为往来。如果需要请求调用一个对象中的某个方法,我们需要向该对象发送消息。
  3. 每个对象都有自己的存储空间,并可容纳其他对象。还可以通过封装现有对象,组建出新的对象。所以,对象通过层层嵌套组合,可以达到非常复杂的程度。
  4. 每个对象都隶属于某种类型。在 Java 中,每个对象都是某个 “类” (Class)的一个 “实例”。一个类最重要的特性就是“能将给它发送什么消息”。
  5. 同一类的所有实例对象都能接收相同的消息。这一特性称为对象的“可替换性”,是 OOP 最重要的概念之一。

OOP 即面向对象程序设计(Object Oriented Programming)。

Grady Booch 对对象提供了更为简洁的描述:一个对象具有自己的状态,行为和标识。这意味着对象有自己的内部数据(提供状态)、方法 (产生行为),并彼此区分(每个对象在内存中都有唯一的地址)。

发布了601 篇原创文章 · 获赞 668 · 访问量 88万+

猜你喜欢

转载自blog.csdn.net/deniro_li/article/details/103834818