现在再看《 Head First 设计模式》
把继承改成默认实现的接口,是否满足 少用继承 的原则?
我觉得默认实现的接口和继承好像没什么区别。
1
npdpx 2019-06-24 11:42:50 +08:00
主要是为了解决接口升级的问题。
|
2
liuxey 2019-06-24 11:47:13 +08:00
这样不就可以有多重继承了吗?
不过 Java 经历了这么多,一开始的设计者和现在的早已毫无关系,好用易用就行 |
3
SoloCompany 2019-06-24 12:06:37 +08:00
默认接口只能定义 method 不能定义 field,这一点上和多继承不能等同
|
4
Leammin 2019-06-24 20:05:26 +08:00 via Android
接口没有 field,所以不跟"少用继承"冲突。"少用继承"主要是因为继承破坏了类的封装性,而接口没有 field,因此不存在破坏封装性的情况。
|