Java中的設計模式和原則

不做打字機發表於2020-10-12

1.JDK中幾個常用的設計模式

  • 單例模式:物件被建立一次後,放入池中,用的時候從池中取。節省系統開銷。
  • 工廠模式:(簡單工廠,抽象工廠)為了解耦,eg:SqlsessionFactory
  • 觀察者模式:物件A依賴著物件B,物件C,物件D…,當物件A改變時,物件B,物件C,物件D都會收到通知,並自動更新。
  • 外觀模式(不太瞭解):提供一個統一的介面,用來訪問子系統中的一群介面。外觀定義了一個高層的介面,讓子系統更容易使用。
  • 模板方法模式(不太瞭解):模板方法 使得子類可以在不改變演算法結構的情況下,重新定義演算法的步驟。
  • 狀態模式(不太瞭解):允許物件在內部狀態改變時,改變這個物件的行為,看起來這個物件似乎修改了它所在的類一樣。

2.什麼是設計模式

它是各位程式設計師前輩們 研究出來的 用來解決特定問題的方法,是程式碼可用性的延伸。

3.什麼是單例設計模式Singleton

建立一個比較耗記憶體的物件,讓整合程式中都能去共享這個物件。

4.設計模式的6大原則

  • 單一職責原則 (一個類如果承擔的職責過多,耦合就越高)
  • 開放封閉原則 (最先想到AOP)類,模組,方法等 可以被擴充套件加強, 但不要隨意修改它們。
    還有,把原來的類作為父類,擴充套件的方法們作為子類。
  • 裡式替換原則 (不太熟悉,感覺是多型的體現)
  • 依賴倒置原則 springmvc 中 controller中注入的是service 而不是serviceImpl
  • 迪米特原則 也是為了降低耦合度。反向代理和正向代理 算不算???
  • 介面隔離原則 介面中的方法儘量少一點。為各個實現類建立專用的介面。

相關文章