今天上課講到decorator pattern,我有個疑問就是,為什麼設計上不寫成這樣
abstract class 主餐
{
protect 副食品 list;
abstract public int cost();
}
class 豬排 : 主餐
{
public override int cost()
{
return 130 + all list cost;
}
}
...
abstract class 副食品
{
}
class 味增湯 : 副食品
{
public override int cost()
{
return 50;
}
}
...
那個all list cost在哪邊做先不管,我的意思是UML繼承架構不要讓副食品繼承主餐,
而是讓而是用 1