Java设计模式—六大原则

Posted 小筱萌

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java设计模式—六大原则相关的知识,希望对你有一定的参考价值。

单一职责

一个类只负责一项职责。

作用:提高类的可读性、可维护性,降低类的复杂性以及由于变更引起的风险。

里氏替换原则

该原则针对继承是对子类型的特别定义:子类可以扩展父类的功能,但不要改变父类原有功能。

1.如果继承是为了代码重用,即共享方法,那么共享的父类方法就应该保持不变,不能被子类重新定义。子类只能通过添加新的方法来进行扩展。此时虽然子类和父类都可以被实例化,但是子类继承的方法和父类是一样的,即使子类把父类的方法覆盖掉他们的逻辑还是一致的,自然也就不会有问题。

2.如果继承的目的是为了实现多态,而多态就是要继承并覆盖父类的方法对其进行新的定义,这种情况下我们就要将父类定义为抽象类,父类中的方法定义为抽象方法。此时父类就不能被实例化,也就不存在子类实例化后覆盖父类实例化的说法了。

依赖倒置原则

实际上就是面向接口编程我们可以​​​​​​​把功能抽象成接口,抽象出来后我们会认为这个接口改变的可能性比较小,而实现接口的类改变的可能性比较大,这样我们在其他类里调用它的时候都用接口的类型来持有这个实例。从而实现了接口和抽象类不依赖于实现类,实现类则依赖于抽象类或者接口。

接口隔离原则

设计接口功能尽量细粒度,最小功能单元。防止实现类依赖它不需要的接口。

迪米特法则

降低类之间的耦合

1.局部变量中不要引入新的类,即要遵循只和最直接的朋友进行交流。

2.减少对朋友的了解,即朋友类中应尽量使用private方法,只暴露应该暴露的方法。

开闭原则

对扩展开放,对修改关闭。

总结:应重点关注:单一职责、依赖倒置原则、开闭原则这三大原则。其中开闭原则最最最为重要,它不仅仅是设计模式也是面向对象的一个最基础的原则。

以上是关于Java设计模式—六大原则的主要内容,如果未能解决你的问题,请参考以下文章

深入讲解 JAVA 设计模式六大原则——SOLID

Java设计模式六大原则

Java设计模式六大原则或者说七大原则

Java面向对象设计的六大原则

浅谈Java六大设计原则

Java六大设计原则