设计模式Java向

设计原则:

开闭原则:

用例对象和提供抽象功能进行分割,用例不变,抽象功能被实现,用于不断的扩展,于是源代码不需要进行修改,只在原有基础上进行抽象功能的实现从而进行代码扩展。不变源于代码,扩展功能

里氏代换原则:

  • 继承父类,尽量不重写父类方法,
  • 父类可以出现的地方,子类必须也可以放入,并且不会出现问题
  • 子类可以实现父类的抽象方法,但是不能覆盖父类的非抽象方法。
  • 子类中可以增加自己特有的方法。
  • 当子类覆盖或实现父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。
  • 当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。

依赖倒置原则(更进一步的开闭原则):

  • 都和抽象类发生关系,不和实现类这种具体的东西发生关系
  • 依赖关系不应是具体类,应当是抽象类,即当前创建实例时,应该父指向子的创建方式,多态
  • 高层模块不应该依赖低层模块,两者都应该依赖其抽象
  • 抽象不应该依赖细节
  • 细节应该依赖抽象
    摘自: 依赖倒置原则

接口隔离原则:

  • 将一个对象的多个职能分隔开来,职能作为对象存在,被调用时可以因地制宜
  • 其实,这样也有一个弊端,接口太细致,接口数据会过于繁杂

迪米特原则:

只和朋友交流:只知道另一个类,至于另一个类具体是干嘛的,不需要知道
只与类中的成员变量对象,方法中的形参(当创建一个对象类型的参数),类的方法中所创建的对象发生关系
设计模式Java向_第1张图片

合成复用原则:

多解耦,不要写死
设计模式Java向_第2张图片

你可能感兴趣的:(设计模式,java,开发语言)