首页 > 代码库 > think in java -笔记

think in java -笔记

1.抽象过程

   1.1 万事万物皆对象:在程序中任何的概念化构件(狗,建筑物,服务等),都可以表示为对象

   1.2 程序是对象的集合,它们彼此通过发送信息来调用对方

   1.3 每个对象都有其它对象所构成的存储

   1.4 每个对象都拥有其类型

   1.5 某一特定类型的所有对象都可以接收(Receive)同样的消息

  对象的3大特点:状态(state),行为(behaviour),标识(identity).

2.对象

   2.1每个对象都有一个接口

技术分享

   2.2 每个对象都在提供服务(提高对象的内聚性)

         对象能够为我提供什么适当的服务去解决问题?高内聚是软件设计的基本质量要求之一:这意味着一个软件构件(例如一个对象)

         的各个方面"组合"得很好。在设计对象时所面临的一个问题是将过多的功能填入该对象,可以将一个对象分解成多个对象,将功

         能的实现分给不同的对象。然后最终由一个对象来调用其他对象的功能。这样每个对象都有一个它所能提供服务的高内聚集合。

   2.3 复用具体实现(代码复用)

         代码复用是oop所提供的最了不起的优点之一。最简单的复用某个类的方式就是直接使用该类的一个对象

        我们称为“创建一个成员对象”,使用现有的类合成新的类称为“组合”(composition),如果组合式动态发

        生的,那么它通常被称为“聚合”(aggregation)。组合经常被视为“has-a”(拥有)关系,就像汽车拥有引擎一样。

        有时候“组合”比“继承”好。

   2.4 继承

         使基类和导出类产生差异的两种方法:1.添加新方法。2.方法重载覆盖父类的方法

 

think in java -笔记