static void Main(string[] args) { // 我买了个苹果手机 Phone phone = new ApplePhone(); // 现在想贴膜了 Decorator applePhoneWithSticker = new Sticker(phone); // 扩展贴膜行为 applePhoneWithSticker.Print(); Console.WriteLine("----------------------\n"); // 现在我想有挂件了 Decorator applePhoneWithAccessories = new Accessories(phone); // 扩展手机挂件行为 applePhoneWithAccessories.Print(); Console.WriteLine("----------------------\n"); // 现在我同时有贴膜和手机挂件了 Sticker sticker = new Sticker(phone); Accessories applePhoneWithAccessoriesAndSticker = new Accessories(sticker); applePhoneWithAccessoriesAndSticker.Print(); Console.ReadLine(); }
static void Main(string[] args) { Phone phone = new iPhone(); Decorator iPhoneWithSticker = new Sticker(phone); iPhoneWithSticker.Print(); Console.WriteLine("-----------------"); Decorator iPhoneWithAccessories = new Accessories(phone); iPhoneWithAccessories.Print(); Console.WriteLine("-----------------"); Sticker sticker = new Sticker(phone); Accessories iPhoneWithStickerAndAccessoies = new Accessories(sticker); iPhoneWithStickerAndAccessoies.Print(); Console.ReadLine(); }