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

2025-06-24 19:50:11

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

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

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

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

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

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

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

为什么go和rust语言都舍弃了继承?
广告位810*200
相关阅读
如何评价福原爱?

如何评价福原爱?

前几天奥运,看了几次福原爱和方博的直播切片,感觉有点可怕。 ...

2025-06-25
谁有这个系列的壁纸啊?

谁有这个系列的壁纸啊?

啧……要命。 这个是一个叫“学妹加速跑”(没错,真的叫这个...

2025-06-25
英雄联盟已经历经那么多年,你印象中最深刻的是哪个赛季?

英雄联盟已经历经那么多年,你印象中最深刻的是哪个赛季?

印象最为深刻的应该还是S8赛季,哪一年的LPL完成了几乎所有...

2025-06-25
微软edge浏览器为什么逐渐被其他的浏览器代替?

微软edge浏览器为什么逐渐被其他的浏览器代替?

微软周一宣布,将在欧洲停止目前Microsoft Edge的...

2025-06-25
Node.js是谁发明的?

Node.js是谁发明的?

ryan dahl。 老哥在全国到处接Web项目的时候实在...

2025-06-25