Par Valentin Brosseau / @c4software


class Animal{
public void move(){
// Implémentation du déplacement
}
}
class Dog extends Animal {
@Override
public void move(){
// Implémentation du déplacement différente du parent
}
public void bark(){
// Le chien fait ouaf.
}
}class Animal{
public void bruit(){
System.out.print("BRUUUUIIIITTTT");
}
}
class Humain extends Animal {
@Override
public void bruit(){
super.bruit()
System.out.print(" (Oui mais compréhensible)");
}
}Que va afficher le programme suivant ?
$humain = new Humain();
$humain.bruit();abstract class Animal{
abstract void bruit();
}
class Humain extends Animal {
@Override
public void bruit(){
super.bruit()
System.out.print(" (Oui mais compréhensible)");
}
}Non !
Surcharge ≠ Redéfinition

Animal monLapin = new Lapin();