因为继承关系粒度太粗,它实际上可以并有必要拆分成三个关系。
当我们让子类继承了父类时,我们相当于: 行为上,让子类作为父类的代理。
数据上,让子类对象聚合了一个父类对象。
多态上,让子类作为父类的实现。
当面向对象刚刚兴起的时候,大家觉得三种关系可以合并成继承关系,这是很自然的。
毕竟,子类想要实现父类,最简单的做法就是往子类对象里面聚合一个父类对象,然后让子类代理访问父类的接口。
然而随着面向对象的发展,…。
{dede:pagebreak/}
为什么Rust的包管理器Cargo这么好用?
如何评价MiniMax开源首个视觉RL统一框架V-Triune,实现推理感知一肩挑,其技术上有何优势?
用PHP写了个小框架,怎么才能得到大佬们的指点?
群晖 nas 有些什么基本和好玩的功能?
如何解决Cursor等Agent编码开发轮次多了过后代码库变成屎山的问题?
什么是 5G 固定无线接入(FWA)?
你被哪个后来知道很sb的BUG困扰过一周以上吗?
为什么有的女生喜欢穿紧身牛仔裤?
Jetpack Compose 和 Flutter 应该先学哪个呢?
为什么我的鼠标最多用半年按键就会失灵?
为什么这次以色列打伊朗,网上声讨的人少了,反而都是嘲笑调侃伊朗?
为什么长得漂亮却没什么用?
为什么 CRT 画质这么好也被淘汰,液晶反而发展的很好?
有没有一款工具可以把录音精准地转换成文字?
如何证明散片 CPU 比盒装 CPU 差?
docker有哪些有趣的用途?