<xmp id="isueg"><nav id="isueg"></nav>
  • <dd id="isueg"><nav id="isueg"></nav></dd>
    <xmp id="isueg">
  • <center id="isueg"></center>
    <nav id="isueg"><code id="isueg"></code></nav>
    Java設計模式

    行為型模式

    行為型模式用于描述程序在運行時復雜的流程控制,即描述多個類或對象之間怎樣相互協作共同完成單個對象都無法單獨完成的任務,它涉及算法與對象間職責的分配。

    行為型模式分為類行為模式和對象行為模式,前者采用繼承機制來在類間分派行為,后者采用組合或聚合在對象間分配行為。由于組合關系或聚合關系比繼承關系耦合度低,滿足“合成復用原則”,所以對象行為模式比類行為模式具有更大的靈活性。

    行為型模式是 GoF 設計模式中最為龐大的一類,它包含以下 11 種模式。

    ⒈模板方法(Template Method)模式:定義一個操作中的算法骨架,將算法的一些步驟延遲到子類中,使得子類在可以不改變該算法結構的情況下重定義該算法的某些特定步驟。

    ⒉策略(Strategy)模式:定義了一系列算法,并將每個算法封裝起來,使它們可以相互替換,且算法的改變不會影響使用算法的客戶。

    ⒊命令(Command)模式:將一個請求封裝為一個對象,使發出請求的責任和執行請求的責任分割開。

    ⒋職責鏈(Chain of Responsibility)模式:把請求從鏈中的一個對象傳到下一個對象,直到請求被響應為止。通過這種方式去除對象之間的耦合。

    ⒌狀態(State)模式:允許一個對象在其內部狀態發生改變時改變其行為能力。

    ⒍觀察者(Observer)模式:多個對象間存在一對多關系,當一個對象發生改變時,把這種改變通知給其他多個對象,從而影響其他對象的行為。

    ⒎中介者(Mediator)模式:定義一個中介對象來簡化原有對象之間的交互關系,降低系統中對象間的耦合度,使原有對象之間不必相互了解。

    ⒏迭代器(Iterator)模式:提供一種方法來順序訪問聚合對象中的一系列數據,而不暴露聚合對象的內部表示。

    ⒐訪問者(Visitor)模式:在不改變集合元素的前提下,為一個集合中的每個元素提供多種訪問方式,即每個元素有多個訪問者對象訪問。

    ⒑備忘錄(Memento)模式:在不破壞封裝性的前提下,獲取并保存一個對象的內部狀態,以便以后恢復它。

    ⒒解釋器(Interpreter)模式:提供如何定義語言的文法,以及對語言句子的解釋方法,即解釋器。

    以上 11 種行為型模式,除了模板方法模式和解釋器模式是類行為型模式,其他的全部屬于對象行為型模式,下面我們將詳細介紹它們的特點、結構與應用。

    全部教程
    亚洲AV女人的天堂在线观看
    <xmp id="isueg"><nav id="isueg"></nav>
  • <dd id="isueg"><nav id="isueg"></nav></dd>
    <xmp id="isueg">
  • <center id="isueg"></center>
    <nav id="isueg"><code id="isueg"></code></nav>