Вызвать метод cofee.GetDescription() переопределенный классом Milk - C#
Формулировка задачи:
Помогите, пожалуйста. Хочу вызвать метод cofee.GetDescription() переопределенный классом Milk, но никак не могу это сделать...
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; abstract public class Beverage { protected String description = "Unknown"; public virtual string GetDescription() { return description; } } public class Espresso : Beverage { public Espresso() { description = "Espresso"; } } abstract public class CondimentDecorator : Beverage { abstract public new string GetDescription(); } public class Milk : CondimentDecorator { Beverage beverage; public Milk(Beverage beverage) { this.beverage = beverage; } public override string GetDescription() { return beverage.GetDescription() + ", milk"; } } class Program { static void Main() { Beverage cofee = new Espresso(); cofee = new Milk(cofee); Console.WriteLine(cofee.GetDescription()); Console.ReadKey(); } }
Решение задачи: «Вызвать метод cofee.GetDescription() переопределенный классом Milk»
textual
Листинг программы
public abstract class Beverage { public virtual string Description { get { return "Unknown beverage";} private set {} } public virtual double Cost { get; private set; } } public abstract class CondimentDecorator : Beverage { protected Beverage beverage; } public class Espresso : Beverage { public override string Description { get { return "Espresso"; } private set {} } public override double Cost { get { return 2.0; } private set {} } } public class Milk : CondimentDecorator { public Milk(Beverage beverage) { this.beverage = beverage; } public override double Cost { get { return 0.2 + beverage.Cost; } private set {} } public override string Description { get { return beverage.Description + ", Milk"; } private set {} } } internal class Program { public static void Main(string[] args) { Beverage coffee = new Espresso(); CondimentDecorator milkAdd = new Milk(coffee); Console.WriteLine(milkAdd.Description); Console.WriteLine(milkAdd.Cost); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д