Observe o código Java apresentado abaixo:
abstract class Animal {
public abstract double getCotaLeite();
}
class Elefante extends Animal {
public double getCotaLeite(){
return 20.0; }
}
class Rato extends Animal {
public double getCotaLeite() {
return 0.5; }
}
class Aplicativo {
public static void main(String args[]){
Animal animal1 = new Elefante();
System.out.println(“Cota diaria
de leite do elefante: “ + animal1.
getCotaLeite());
Animal animal2 = new Rato();
System.out.println(“Cota diaria
de leite do rato: “ + animal2.
getCotaLeite());
}
}
Assinale a alternativa que apresenta corretamente
dois conceitos importantes para a orientação a objetos desenvolvidos no código acima: