diff --git a/src/ch17-01-what-is-oo.md b/src/ch17-01-what-is-oo.md index da56ec8..263beb9 100644 --- a/src/ch17-01-what-is-oo.md +++ b/src/ch17-01-what-is-oo.md @@ -96,7 +96,7 @@ impl AveragedCollection { -为了支持这种模式,Rust 有 **trait 对象**(*trait objects*),这样我们就可以接受任意类型的值,只要这个值实现了指定的 trait。 +为了支持这种模式,Rust 有 **trait 对象**(*trait objects*),这样就可以使用任意类型的值,只要这个值实现了指定的 trait。 继承最近在很多编程语言的设计方案中失宠了。使用继承来实现代码重用,会共享更多非必需的代码。子类不应该总是共享其父类的所有特性,然而继承意味着子类得到了其父类全部的数据和行为。这使得程序的设计更不灵活,并产生了无意义的方法调用或子类,以及由于方法并不适用于子类,却必需从父类继承而可能造成的错误。另外,某些语言只允许子类继承一个父类,进一步限制了程序设计的灵活性。