正在回答
同学你好,1、这里案例中,简单工厂并没有涉及子类扩展父类功能的里氏替换原则,高级模块不依赖低级模块依赖倒置原则等内容,所以也就不存在违反了。
2、设计模式中的SOLID原则-->分别是单一原则、开闭原则、里氏替换原则、接口隔离原则、依赖倒置原则:
1) 单一原则:指的是一个类或者一个方法只做一件事,比如:餐厅服务员负责把订单给厨师去做,而不是服务员又要订单又要炒菜。
2)开闭原则:对扩展开放,对修改关闭。就是一个类独立之后就不应该去修改它,而是以扩展的方式适应新需求。
比如:做了普通计算器程序,突然添加新需求,要再做一个程序员计算器,这时不应该修改普通计算器内部,应该使用面向接口编程,组合实现扩展。
3)里氏替换原则:子类可以扩展父类的功能,但不能改变父类原有的功能,比如:机动车必须有轮胎和发动机,子类宝马车和奔驰车不能没有轮胎属性或者没有发动机属性。
4)接口隔离原则:类不应该依赖不需要的接口,知道越少越好。比如:电话接口只约束接电话和挂电话,不需要让依赖者知道还有通讯录。
5)依赖倒置原则:高级模块不应该依赖低级模块,而是依赖抽象,就好像垃圾收集器不管垃圾是什么类型,要是垃圾就行,而不是必须要根据可回收垃圾、不可回收垃圾来分别收集。
一般情况下,一个程序并不会完全遵守SOLID原则,甚至有些设计模式是违反SOLID原则,具体的使用,就要根据开发时的需求来看了。
如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~
相似问题
登录后可查看更多问答,登录/注册
- 参与学习 人
- 提交作业 357 份
- 解答问题 8016 个
本阶段将带你学习MySQL数据库,JDBC接口,MyBatis框架等,带你掌握的数据的存放和管理。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星