結構型模式 裝飾模式(decorator)

2021-06-18 04:42:02 字數 409 閱讀 4399

1、裝飾模式

動態的給乙個物件新增一些額外的職責,就增加功能來說decorator模式相比生成子類更為靈活。

要求裝飾物件和被裝飾物件實現同乙個介面,裝飾物件持有被裝飾物件的例項。

例項一:

public inte***ce source 

public class sourcechild implements source

}public class decorator implements source

@override

public void method()

}

模擬測試:

public class client 

}

裝飾模式(結構型模式)

裝飾模式是一種動態的給類中新增新行為的設計模式,裝飾模式比生成子類更為靈活,可以給某個物件而不是整個類新增一些功能。值得注意的是裝飾模式的裝飾類也繼承介面類,同時他也有介面類的指標指向他需要裝飾的具體類。外表看著像is a的關係,實際也是has a的關係。實際應用中裝飾類可以同時裝飾幾個具體類。可以...

結構型模式 裝飾模式

裝飾模式是對類的組合進行的擴充。比如現在有個門,現在有一些額外功能,比如 新增鎖 貼春聯 門眼 門框全包 等功能,這些功能可以單獨存在,也可以兩兩組合等隨意組合。怎麼實現這樣的 門 呢.繼承 比如有 貼春聯 門眼 就新增乙個新類,這樣如果需要其他的功能就需要無窮多的子類。組合 加強版組合 裝飾模式 ...

結構型模式 裝飾器模式

為已有的物件新增新的功能 新增新的方法到物件所屬的類中 使用組合創造新的物件 使用繼承創造子類 組合 繼承 新增新方法 python中我們可以使用內建的裝飾器特性來實現對類,方法的擴充套件,而無需使用繼承。用裝飾器來實現程式中的橫切關注點 應用中通用的部件,可以在程式中被廣泛使用的 推薦使用func...