設計模式 裝飾模式 穿衣服

2021-08-21 05:09:52 字數 994 閱讀 7277

裝飾模式指的是在不必改變原類檔案和使用繼承的情況下,動態地擴充套件乙個物件的功能。它是通過建立乙個包裝物件,也就是裝飾來包裹真實的物件。

裝飾模式是為已有功能動態地新增更多功能的一種方式。

person

public

class person

private string name;

public

person(string name)

public

void

show()

}

finery

public

class

finery

extends

person

@override

public

void show()

}}class

tshirt

extends

finery

}class

skirt

extends

finery

}class

shoes

extends

finery

}

main

package decorator;

public

class main

}

結果鞋子 裙子 t恤 jy

此方法其實最大的的好處就是有效的把類的核心職責和裝飾功能區分開來,而且可以去除相關的重複的裝飾邏輯。當你需要某一步的時候再進行裝飾,然後處理。

可以通過單步跟蹤看出來他的運**況

裝飾者模式 穿衣服例項

package com.decorator 這是個componet抽象類 public abstract class personpackage com.decorator 這是乙個concretecomponet的物件,是component類的子類 public class male extend...

研究團隊探索如何讓AI學會自己穿衣服

在siggraph 2018 learning to dress synthesizing human dressing motion via deep reinforcement learning 中,喬治亞理工學院和谷歌腦研究團隊描述了他們如何教導ai穿衣服。機器學習工具自動發現強大的穿衣技巧,...

設計模式 裝飾模式

裝飾模式,動態地給乙個物件新增一些額外的職責,就增加功能來說,裝飾模式比生成子類更為靈活。m 超級瑪麗 普通繼承模式實現 a 發鏢 能組合出七種功能 m1 a m4 a b b 變身 m2 b m5 a c c 無敵 m3 c m6 b c m7 a b m m1 a b 組合方法 new m2 m...