作用:對物件的原有功能進行公升級
書寫步驟
1.明確被裝飾的物件
2.將被裝飾的物件 通過構造方法傳入裝飾類
裝飾類中 肯定有乙個成員變數 就是被裝飾的物件
3.擁有被裝飾的物件 相當於可以呼叫該物件中的所有方法
就可以對該方法進行公升級
// 在校學生
class
student
implements
study
}// 裝飾類
class
lostudent
implements
study
public
lostudent
(student student)
// 對方法進行裝飾(公升級)
@override
public
void
study()
}
以上就是乙個簡單的裝飾者模式栗子。 java設計模式之裝飾者模式
裝飾者模式 動態的將責任附加到物件上。若要擴充套件功能,裝飾者提供了比繼承更有彈性的替代方案。類圖 barbecue類 實現 package com.decorator public abstract class barbecue public abstract double cost fish類 ...
Java設計模式之裝飾者模式
設想乙個情景,假設有一家奶茶店,店裡面只賣飲料,不賣其他的東西,且飲料的品種只有兩種分別為coffee和milk,那麼為這家店的訂單系統可以簡單的設計為兩個類,coffee類和milk類。如果有一天,店裡面賣的飲料品種增加了很多種,這個時候我們可以發現飲料種類很多,但是每一類都可以抽象出類似的屬性和...
Java設計模式之裝飾者模式
裝飾者模式在保持原有結構不變的情況下,新建類 新增功能 去包裝原有的類。1.實體抽象類 public inte ce drink 2.具體例項實現 public class coffee implements drink override public string getdescription 3...