为什么go和rust语言都舍弃了继承?

2025-06-27 08:35:13

因为继承关系粒度太粗,它实际上可以并有必要拆分成三个关系。

当我们让子类继承了父类时,我们相当于: 行为上,让子类作为父类的代理。

数据上,让子类对象聚合了一个父类对象。

多态上,让子类作为父类的实现。

当面向对象刚刚兴起的时候,大家觉得三种关系可以合并成继承关系,这是很自然的。

毕竟,子类想要实现父类,最简单的做法就是往子类对象里面聚合一个父类对象,然后让子类代理访问父类的接口。

然而随着面向对象的发展,…。

为什么go和rust语言都舍弃了继承?
广告位810*200
相关阅读
为什么是9月3日阅兵而不是10月1日国庆阅兵?

为什么是9月3日阅兵而不是10月1日国庆阅兵?

9月3日阅兵,蕴含大战略、大阳谋。 9月3日是中国人民...

2025-06-26
为啥加州会站在非法移民一边?

为啥加州会站在非法移民一边?

去网上找一下老墨干活的***,一群人烈日下在农田里从早干到晚...

2025-06-26
哪个瞬间让你觉得编程只是一门技术?

哪个瞬间让你觉得编程只是一门技术?

当年做游戏开发,C++、Lua、J***aScript、Ty...

2025-06-26
为什么现在吹Rust的人这么多?

为什么现在吹Rust的人这么多?

开门见山: Rust 是积累了人类在软件工程学,编译原理等领...

2025-06-26
是否建议把int *p写作int* p?

是否建议把int *p写作int* p?

不建议 声明 p1 p2 p3 p4 这四个指针,代码应该怎...

2025-06-26