public static void Main()
Decorator dt = new CupTea(ce);
Console.WriteLine(dt.Type());
public abstract class CupCoffe
public virtual double Type()
public override double Type()
public abstract class Decorator:CupCoffe
public Decorator(CupCoffe cf)
public class CupTea:Decorator
public CupTea(CupCoffe cfs) :base(cfs)
public override double Type()
return cfs.Type() * 1.12;