static void AdditionalHeroData(ISuperHero hero) { SuperMan superman = hero as SuperMan; if (superman != null) { Console.WriteLine(superman.Speed); } else { SpiderMan spiderMan = hero as SpiderMan; if (spiderMan != null) { Console.WriteLine(spiderMan.WebLeft); } else { Flash flash = hero as Flash; if (flash != null) { Console.WriteLine(flash.Volt); } else { Console.WriteLine("Hero not indicated"); } } } }
static void Main(string[] args) { SuperMan vladimirPutin = new SuperMan("Putin", 30, 220); SpiderMan hitler = new SpiderMan("Hitler", 20, 110); Flash stalin = new Flash("Stalin", 10, 99.3); ISuperHero[] superHeroes = new ISuperHero[3]; superHeroes[0] = vladimirPutin; superHeroes[1] = hitler; superHeroes[2] = stalin; ISuperHero[] superHeroesPolitim = { vladimirPutin, hitler, stalin }; ISuperHero[] superHeroesNew = { new SuperMan("Putin", 30, 220), new SpiderMan("Hitler", 20, 110), new Flash("Stalin", 10, 99.3) }; foreach (ISuperHero hero in superHeroes) { ActivateHero(hero); } }