当前位置: 首页 > 后端技术 > Java

Java设计原则

时间:2023-04-01 23:48:14 Java

六大设计原则单一职责原则类变更的原因不应该超过一个。通俗地说,一个类只负责一个职责。开闭原则是对扩展开放,对修改关闭。里氏代换原则1.里氏代换原则是为了继承。如果继承是为了实现代码重用,即共享方法,那么共享的父类方法应该保持不变,不能被子类重新定义。子类只能通过增加新的方法来扩展功能。父类和子类都可以实例化,子类继承的方法与父类相同。父类调用一个方法的地方,子类也可以调用同一个继承得到的方法,与父类的逻辑一致。这时候父类对象换成子类对象,逻辑当然是一致的,没有问题。2.如果说继承的目的是多态,那么多态的前提是子类重写并重新定义了父类的方法。为了符合LSP,我们应该将父类定义为抽象类,并定义抽象方法,子类可以重新定义这些方法。当父类是抽象类时,父类不能实例化,所以程序中不存在可实例化的父类对象。子类替换父类实例时也不存在逻辑不一致的可能性(父类实例根本不存在)。最常见的不符合LSP的情况是父类和子类都是非抽象类,可以实例化,父类的方法被子类重新定义。这个类的实现继承会造成父类和子类之间的差距。强耦合,即实际上不相关的属性和方法牵强附会在一起,不利于程序扩展和维护。如何获得LSP资格?总结一句话——尽量不要继承可实例化的父类,而是使用基于抽象类和接口的继承。Dimit原则的意思就是降低类之间的耦合度。由于每个对象最大限度地减少了对其他对象的理解,因此很容易使系统的功能模块化和独立,并且它们之间没有(很少)依赖关系。接口隔离原则要求将臃肿庞大的接口拆分成更小更具体的接口依赖倒置原则程序依赖于抽象接口,而不是具体的实现类。简单的说,就是对抽象进行编程,而不是对实现进行编程,降低耦合。