【发布时间】:2015-06-14 10:49:12
【问题描述】:
我对带有协议扩展的漂亮代码的可能性着迷。 但我似乎没有掌握类继承之间的真正区别。
我知道有不同的方法来建模某些东西,比如我可以使用组合而不是类继承。
但后来我知道了类继承的特点,就是子类可以很容易地使用超类的实现。有了协议扩展,我也有这个特性,即使是值类型。
所以问题是类继承有哪些特性,哪些协议扩展没有;或何时使用类继承而不是协议扩展。
【问题讨论】:
-
这不是一个直接的答案,而是一个理论上的答案,但我在某处表示你应该使用类继承,当 sublcas IS超类的实例,并在您的类具有协议的属性时使用协议。
-
这听起来更像是继承与组合的区别。