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

2025-06-24 14:35:18

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

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

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

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

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

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

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

为什么go和rust语言都舍弃了继承?
广告位810*200
相关阅读
各位都在用Docker跑些什么呢?

各位都在用Docker跑些什么呢?

【目前主要装了这几个,比较推荐的是】1、Lucky:动态域名...

2025-06-25
你卡过最厉害的bug是什么?

你卡过最厉害的bug是什么?

我娃卡出来的bug, 现在的孩子吧,给手机就不好好学习。 不...

2025-06-25
为什么Rust写个链表都那么难?

为什么Rust写个链表都那么难?

表面上看是因为Rust所有权系统不承认线性逻辑中的指数推理规...

2025-06-25
为什么MIPS架构的路由器CPU能实现比X86高很多的网络吞吐量?

为什么MIPS架构的路由器CPU能实现比X86高很多的网络吞吐量?

先说结论. 因为你看到的MIPS SoC的路由都是“硬”路由...

2025-06-25
这种裙子是不是对直男爆杀?

这种裙子是不是对直男爆杀?

咋说呢,欧美款型的裙子欧美身材穿才是薄纱,在大街上见过瘦到特...

2025-06-25