继承与组合比较

对比项 继承 组合
类型 白箱复用 黑箱复用
封装 暴露了父类实现,破坏了封装 可以使用依赖注入保护封装
动静态 静态,编译时就已经确定 动态,运行时 可以延后具体的实现类

总结

固定场景可以考虑使用继承,其他场景使用组合更灵活

参考

posted @ 2022-11-07 13:04  东百牧码人  阅读(21)  评论(0)    收藏  举报