面向对象的六大原则(原则都是唬人 关键在于理解面向对象)

一 六大原则叫什么我已经忘了java

二 六大原则究竟是什么以及有什么做用,一句话:教你在用面相对象编程语言编程的时候如何更好地利用面向对象编程语言的特性spring

例如:若是你使用的是java语言的话。编程

1 最基本的三大特性:封装  继承  多态设计模式

2 java的高级特性:反射   多线程等等。(没有反射哪来的什么spring ioc啊)多线程

 

三 六大原则告诉咱们怎么作呢:架构

1 通用的原则:全部全部语言都应该遵循的一个(即便是面向过程语言),开闭原则,对修改关闭对扩展开放。编程语言

     最简单的例子:新的需求来的时候,须要在方法里面加一个参数,千万不要就增长一个参数,即便用最笨的方法重载这个方法,也不要去直修改这个方法。spa

2 架构方面的原则:依赖于抽象,不依赖于具体。缘由是:抽象更为稳定。核心是使用:抽象类和接口。线程

3 抽象类设计的原则:子类替换父类没有任何影响。这也就是说:父类的设计要高度抽象,子类尽可能不要去重写父类的方法,若是有大量的重写,请把这个方法放到接口里去。设计

4 接口设计的原则:子类不要去实现本身不须要的方法。这也就是说:接口的设计不能太大,省得子类会实现本身不须要的方法。

5 类的设计原则(2个):(1)单一职责 (2)最小依赖 。  最小依赖的最典型应用:依赖注入。

 

设计模式

23种设计模式是这六大原则综合起来的最佳解决方案。因此一开始就去看设计模式,没有理解面向对象的话,每每只能是理解设计模式自己,最重要的仍是理解面向对象语言自己。因此:不谈面向对象就直接讲设计模式,那是在耍流氓。