static void Hero() { var client = new GothamCity(); var poisonIvy = new PoisonIvy(); client.HandleVillain(poisonIvy); Console.WriteLine(poisonIvy); var clayface = new Clayface(); client.HandleVillain(clayface); Console.WriteLine(clayface); var joker = new Joker(); client.HandleVillain(joker); Console.WriteLine(joker); try { var bane = new Bane(); client.HandleVillain(bane); } catch (Exception e) { Console.WriteLine(e.Message); } }
static void Hero() { Announcer announcer = new CentralCity() { Hero = new Flash() // no SideKick, no problem }; announcer.Announce(); announcer = new GothamCity() { Hero = new Batman(), SideKick = new Robin(), }; announcer.Announce(); }