java面向对象的六大原则:
1、单一职责原则:
单一职责简单来说就是一个类只做一件事,但是需要根据实际情况来做具体的分析。
2、里氏替换原则:
里氏替换原则依赖于继承、多态这两大特性。里氏替换原则简单来说就是所有引用基类、接口得地方必须能透明的使用其子类的对象,通俗点讲,只要父类能出现的地方子类就可以出现,而且替换为子类也不会产生任何错误或异常,使用者可能根本就不需要知道使用的到底是子类还是父类。但是,反过来就不行了,有子类出现的地方,父类未必就能适应。
3、依赖倒置原则:
三个关键点--- 高层模块不应该依赖低层模块,两者都应该依赖其抽象。抽象不应该依赖细节。细节应该依赖抽象。采用依赖倒置原则可以减少类间的耦合性,提高系统的稳定,降低并行开发引起的风险,提高代码的可读性和可维护性。(精髓是面向接口编程)
4、开闭原则:
一个软件实体如类、模块和函数应该对扩展开放、对修改关闭。在软件的生命周期内,因为变化、升级、维护等原因需要对软件原有代码进行修改时,可能会给旧代码引入错误,因此,当软件需要变化时,我们应该尽量通过扩展的方式来实现变化,而不是通过修改已有的代码来实现。
5、接口隔离原则:
一个类对于另一个类的依赖应该建立在最小的接口上。根据接口隔离原则,当一个接口太大时,我们需要将它分割成一些更细小的接口,使用该接口的客户端仅仅需要知道与之相关的方法即可。
6、迪米特原则:
也称为最少知识原则,一个对象应该对于其他对象有最少的了解,通俗的讲,一个类应该对自己需要耦合或调用者或者依赖者没有关系,调用者或依赖者只需要知道它需要的方法即可,其他的一概不关心。类与类之间的关系越密切,耦合度越大,当一个类发生改变时,对另一个类的影响也就越大。(只与直接的朋友通信)