因为继承关系粒度太粗,它实际上可以并有必要拆分成三个关系。
当我们让子类继承了父类时,我们相当于: 行为上,让子类作为父类的代理。
数据上,让子类对象聚合了一个父类对象。
多态上,让子类作为父类的实现。
当面向对象刚刚兴起的时候,大家觉得三种关系可以合并成继承关系,这是很自然的。
毕竟,子类想要实现父类,最简单的做法就是往子类对象里面聚合一个父类对象,然后让子类代理访问父类的接口。
然而随着面向对象的发展,…。
{dede:pagebreak/}
为什么会有 U 盘独个文件不可以超过 4GB 这种设定?
OSI 协议与 TCP / IP 协议有什么差别?
Gemini Advanced 和 aistudio有什么区别?
如何看待英雄联盟前职业选手mlxg官司输了,被强制执行2500w?
如何看待小米开源项目MiLM-6B?
5 月 28 日 DeepSeek R1 模型完成小版本试升级并开源,具体有哪些提升?使用体验如何?
伊朗没有战斗机吗?为什么不起飞空中拼***?
什么是最好的编程用显示器?
如何评价《一人之下》***第 721(764)话?
如何评价腾讯元宝桌面端使用 Rust 的 Tauri 框架?
如何看待机器之心重测高考数学全卷,Gemini夺冠,豆包DeepSeek并列第二?
如何看待CCTV13批评“L2.999智驾”等误导性宣传,若导致事故车企可能需要担责?
duckdb的性能如何?
如何搭建自己CDN服务器?
你的低成本爱好是什么?
三只羊是不是被人做局了?