今天做了裝飾模式---手機功能的公升級的實驗,用了差不多兩個小時的時間,理解了裝飾模式的原理,下面是裝飾模式的簡介以及實驗要求和實現。
簡介:裝飾模式指的是在不必改變原類檔案和使用繼承的情況下,動態地擴充套件乙個物件的功能。它是通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。
編輯語音
(1) 裝飾物件和真實物件有相同的介面。這樣客戶端物件就能以和真實物件相同的方式和裝飾物件互動。
(2) 裝飾物件包含乙個真實物件的引用(reference)
(3) 裝飾物件接受所有來自客戶端的請求。它把這些請求**給真實的物件。
(4) 裝飾物件可以在**這些請求以前或以後增加一些附加功能。這樣就確保了在執行時,不用修改給定物件的結構就可以在外部增加附加的功能。在物件導向的設計中,通常是通過繼承來實現對給定類的功能擴充套件
實驗要求:
類圖:
**:public class changer extends phone
@override
public void voice()
public class client
}public class complexphone extends changer
public void flash()
public final class jarphone extends changer
public void voice()
}public abstract class phone
public class ******phone extends phone
@override
public void voice()
手機 裝飾者模式
裝飾者 裝飾者與被裝飾物件有相同的父類 裝飾者內包含被裝飾者物件的引用 組合替代繼承來擴充套件物件行為,執行時根據需求動態擴充套件 擴充套件開放,修改關閉。public class phone public class iphone phone public class vivo phone pub...
手機必不可少的功能 FOTA(無線公升級)
fota總結 適用範圍 展訊平台,mtk平台 高通平台 一 t卡公升級 1 編譯差分包 編譯 source build envsetup.sh lunch user 專案名稱 make j8 make j8 otapackage pac 執行完命令後會有如下包生成 out target produc...
設計模式之裝飾器模式 各種功能隨意擴充套件
裝飾器模式是靈活給原有類裝飾新功能。動態的給物件新增額外職責,就增加功能來說,裝飾模式比生成子類更為靈活。如果你需要新增一些額外的功能,再不修改原有類的基礎上,給原有類套個殼。並且可以套多個殼,我覺得裝飾器模式有點像中介軟體。比如你現在有乙個登入的功能。可以使用裝飾器模式。裝飾器模式 裝飾器父類 c...