コード例 #1
0
ファイル: Program.cs プロジェクト: alexavy/design_patterns
        private static void Main(string[] args)
        {
            var car             = new Car("Nissan p10", 5000);
            var upgradedCar     = new CarWithParkingSensorsDecorator(new CarWithAirConditioningDecorator(new CarWithAbsDecorator(car)));
            var fullUpgradedCar = new CarWithSpoilerDecorator(new CarWithParkingSensorsDecorator(new CarWithAirConditioningDecorator(new CarWithAbsDecorator(car))));

            Console.WriteLine($"Simple car: {car.GetName()} {car.GetPrice()}$");
            Console.WriteLine($"Upgraded car: {upgradedCar.GetName()} {upgradedCar.GetPrice()}$");
            Console.WriteLine($"Full upgraded car: {fullUpgradedCar.GetName()} {fullUpgradedCar.GetPrice()}$");

            Console.ReadKey();
        }
コード例 #2
0
 public override decimal GetPrice()
 {
     return(Car.GetPrice() + 1500);
 }