面向对象程序设计是当今主流的程序设计范型,已经取代了早期的“结构化”过程化程序设计开发技术,java是完全面向对象的计算机语言,要使用面向对象式来设计java程序。
学习Java肯定需要知道面向对象设计原则是什么,这样才能用写出程序。
面向对象设计原则一共有七个:开闭原则、里氏替换原则、依赖倒转原则、单一职责原则、接口隔离原则、组合/聚合复用原则、迪米特法则。
下面分别来介绍这七大面向对象设计原则:
1、开闭原则
面向对象可复用设计原则中最基础的原则便是开闭原则,开闭原则指的是在设计一个对象(类、模块、函数)时,应遵循或做到对扩展开放、对修改关闭,其核心思想是面向接口/抽象进行编程。
系统的抽象化设计,是开放关闭原则的关键。可以通过接口、抽象类定义系统的抽象层,通过实现类进行扩展,增加新功能只需增加新的实现类,而无需修改抽象层,从而实现在不修改已有代码的情况下实现系统扩展。
2、里氏替换原则
里氏替换原则要求设计一个对象时,代码中任何父类对象可以出现的地方,子类都可以出现,即可以使用子类来代替父类。实现开闭原则的核心思想是面向接口/抽象进行编程,其关键步骤是抽象化,而父类和子类的继承关系就是抽象化的具体体现,所以里氏替换原则是对实现抽象化的具体步骤的规范,它是对开闭原则的补充。
3、依赖倒转原则