static void Main(string[] args) { Cachorro catchurro1 = new Cachorro(); catchurro1.setPeso(100); Console.ReadKey(); }
static void PolimorfismoComGatoECachorro() { Animal cachorro = new Cachorro(); Animal gato = new Gato(); EmitirSomAnimal(cachorro); EmitirSomAnimal(gato); //cachorro.Morder(); referencia genérica não enchega o objeto if (cachorro is Cachorro) { ((Cachorro)cachorro).Morder(); //Antes de fazer cast fazer o teste para antecipar o erro } }
static void Main(string[] args) { Cachorro cachorro = new Cachorro(); Gato gato = new Gato(); Peixe peixe = new Peixe(); List <Animal> listaAnimais = new List <Animal>(); listaAnimais.Add(cachorro); listaAnimais.Add(gato); listaAnimais.Add(peixe); foreach (Animal animal in listaAnimais) { Console.WriteLine("Eu sou um " + animal + " que " + animal.QualHabitat()); } }
static void Main(string[] args) { //Cachorro c = new Cachorro(); //c.Falar(); Animal a = new Cachorro(); //a.Falar(); // OUTRO MODELO DE CASTING //((Cachorro)a).Morder(); // 1 MODELO DE CASTING UTILIZANDO O OPERADOR IS //if (a is Cachorro) //{ // //FAZENDO O CASTING CASO VERDADEIRO // Cachorro c = (Cachorro)a; // c.Morder(); //} //else //{ // Console.WriteLine("Casting não pode ser feito"); //} Cachorro c = a as Cachorro; if (c != null) { c.Morder(); } else { Console.WriteLine("Não pode ser feita a conversão"); } //Gato g = new Gato(); //g.Falar(); }
static void Main() { Animal a = new Gato(); //if( a is Cachorro) //{ // Cachorro c = (Cachorro)a; // c.Morder(); //} //else //{ // Console.WriteLine("o casting não pode ser feito"); //} Cachorro c = a as Cachorro; if (c != null) { c.Morder(); } else { Console.WriteLine("o casting não pode ser feito"); } }