mirror of
https://github.com/KaiserY/trpl-zh-cn
synced 2024-11-14 04:41:49 +08:00
commit
f1ee5c5ef7
@ -69,6 +69,6 @@
|
|||||||
|
|
||||||
近来继承作为一种语言设计的解决方案在很多语言中失宠了,因为其时常带有共享多于所需的代码的风险。子类不应总是共享其父类的所有特征,但是继承却始终如此。如此会使程序设计更为不灵活,并引入无意义的子类方法调用,或由于方法实际并不适用于子类而造成错误的可能性。
|
近来继承作为一种语言设计的解决方案在很多语言中失宠了,因为其时常带有共享多于所需的代码的风险。子类不应总是共享其父类的所有特征,但是继承却始终如此。如此会使程序设计更为不灵活,并引入无意义的子类方法调用,或由于方法实际并不适用于子类而造成错误的可能性。
|
||||||
|
|
||||||
另外某些语言还只允许单集成(意味着子类只能继承一个父类),进一步限制了程序设计的灵活性。
|
另外某些语言还只允许单继承(意味着子类只能继承一个父类),进一步限制了程序设计的灵活性。
|
||||||
|
|
||||||
因为这些原因,Rust 选择了一个不同的途径,使用 trait 对象而不是继承。让我们看一下 Rust 中的 trait 对象是如何实现多态的。
|
因为这些原因,Rust 选择了一个不同的途径,使用 trait 对象而不是继承。让我们看一下 Rust 中的 trait 对象是如何实现多态的。
|
||||||
|
Loading…
Reference in New Issue
Block a user