在接触 设计模式之后, 接口和抽象类 都 会偶尔用上一下下..但是总是觉得 这两者的差别 很微妙,
只要实现了该接口的对象 就可以在任何需要 该类型的地方出现...不对,表达不 出来..
反正差不多就是 实现了 接口 的对象 就像 抽象类 子类的 对象一样... 完全可以 由子类对象所替代...里氏代换原则.,
1.继承接口 必须实现其所有 方法 , 而抽象类则重点在于 设计抽象类的时候 注意其 可扩展性 和 多态性,(Template Method principle 就是在运用这一点),
2.我 只能感觉到 接口 似乎旨在于 对功能 的抽象 ,也就是 表明 实现者 具有某种能力,
而抽象类 则 更加偏向于 一种 家族 观念. 抽象类 与 多 接口 结合,就好比是 单一血统 , 但又不受限制的学习能力,,
3.对于抽象类的继承 , 我是说多级 继承之后 ,比较容易 产生 非常复杂的 类关系 ,还有成员 也 会比较复杂, 假如 可以有多继承的话这种情况会更加可怕, 这可能也是 java 抛弃多继承的原因吧.
计划 以 面向对象语言 的 几大特性 来分析 设计模式..
看什么时候 有时间了 ...
休息一下...等下去看书咯