裝飾設計模式:當想要對已有的對象進行功能增強時,可以自定義類將已有的對象傳入,並提供加強功能,自定義的該類稱為裝飾類
典型的:
Reader--FileReader
--BufferedReader
class Decorator{ public void eat(){ System.out.println("吃飯"); } } public class DecoratorDemo extends Decorator{ public DecoratorDemo() { } public DecoratorDemo(Decorator d) { } /** * @param args */ public static void main(String[] args) { //使用繼承來增強功能,體系會很臃腫 Decorator dd=new DecoratorDemo(); dd.eat();//輸出 孩子吃飯 //使用裝飾器模式增強功能,增強某一個功能 //構造參數傳遞 DecoratorDemo dd2=new DecoratorDemo(new Decorator()); dd2.eatFoods(); } public void eat(){ System.out.println("孩子吃飯"); } public void eatFoods(){ System.out.println("孩子吃飯"); } }