Crystian Leo Baseado no material da professora Karina Oliveira Sexta Lista de Exerccios Herana, Polimorfismo, Classe Abstrata e Sobreposio de Mtodos 1) Herana, polimorfismo e classe abstrata: Implementar as seguintes classes e seus respectivos atributos: a) Animal: nome (string). A classe animal tem o mtodo abstrato void talk( ) que deve imprimir a fala do animal. b) Cachorro: raa (string), lateMuito (booleano). c) Arara: cor (string), regiaoOrigem (string). d) Classe de testes: TesteAnimal que define duas variveis do tipo Animal e armazena em cada uma delas um objeto do tipo Cachorro e outro do tipo Arara. Imprimir aps a criao dos objetos os valores armazenados em cada um dos atributos do objeto Cachorro e do objeto Arara. 2) Herana, polimorfismo e classe abstrata: Alterar o modelo da questo 1 para: a) Acrescentar as classes Mamifero e Ave que herdam de Animal. b) A classe Cachorro passa a herdar de Mamifero. c) A classe Arara passa a herdar de Ave. d) Acrescentar a classe Gato que herda de Mamifero. e) Acrescentar a classe Papagaio que herda de Ave. f) Classe de testes: TesteAnimal2 que define quatro variveis do tipo Animal e armazena em cada uma delas um objeto do tipo Cachorro, Arara, Gato e Papagaio. Imprimir aps a criao dos objetos os valores armazenados em cada um dos atributos dos objetos. 3) Herana, polimorfismo e sobreposio de mtodos: Implementar as seguintes classes e seus respectivos atributos: a) Classe Carro: nome (string), fabricante (string), velocidade mxima (ponto-flutuante). O atributo velocidade mxima s pode aceitar valores de 0 a 200 km/h. b) Classe CarroCorrida que herda da classe Carro. Um carro de corrida pode ter como velocidade mxima valores de 0 a 400 km/h. c) Classes de testes: TesteCarro que define duas variveis do tipo Carro e armazena em cada uma delas um objeto do tipo Carro e outro objeto do tipo CarroCorrida. OBS: Para todas as classes de dados acima deve-se usar a tcnica de encapsulamento apresentada no curso, implementar mtodos get e set para todos os atributos e implementar dois construtores: um default e outro recebendo valores para todos os atributos.
4) Herana, polimorfismo e classe abstrata: Leia com ateno o cdigo das classes abaixo. a) Antes de tentar compil-las identifique o erro de compilao que dever ocorrer. Compile-as e verifique se a sua previso estava correta.
b) Faa a alterao necessria na classe SubClasse1 de forma que a mesma possa ser compilada. c) Agora leia com ateno o cdigo da classe TestandoClasses a seguir. Antes de compil-lo procure prever os erros de compilao que iro ocorrer. Em seguida compile-o e verifique se as suas previses estavam corretas. d) Faa as modificaes necessrias ao cdigo de TestandoClasses para que possa ser compilado e o programa executado.