面向对象设计时类有几种类型:值类、服务类、业务类、工具类
值类不言自明,所说的服务类指负责程序框架的那些类[比如Struts等等],业务类指真正系统要实现的业务功能的类、
工具类就是那些全是static函数的那些类。
主要进行建模和分析的应该是
业务类,即有一些行为的类是我们应当首先分析的。
封装性-面向对象方法的一个重要原则
1、把对象(类)的属性和服务结合在一起
2、尽可能的隐蔽对象的内部细节
3、值对象和工具类是误用
4、对有行为的类进行分析
5、反射、指针会破坏封装性
6、对象的创建(组装)和使用应该分开
7、多接口
多态性-与面向过程的核心区别
重写:子类中可以重新定义父类中已有的方法,从而体现出子类自己的行为
定义重写
Interface (java关键字)
Abstract (java关键字)
重载:同一个类中至少有两个方法用同一个名字,但有不同的参数
慎用重载(提供有意义的名称,参数类)
继承性-从继承到抽象
面向对象的基石
代码重用的基本方法(实现继承)
子类是对其父类的职责进行扩展,而非重写或废除
抽象的同义词
继承侧重于代码重用
抽象侧重于接口重用
GOF 设计模式(几乎全是接口继承)
Trackback: http://tb.donews.net/TrackBack.aspx?PostId=316447