Je lisais un guide du programmeur sur la certification Java ™ SCJP par Khalid Mughal.
Dans le chapitre Héritage, il explique que
L'héritage des membres est étroitement lié à leur accessibilité déclarée. Si un membre de superclasse est accessible par son nom simple dans la sous-classe (sans utiliser de syntaxe supplémentaire comme super), ce membre est considéré comme hérité
Il mentionne également que les méthodes statiques ne sont pas héritées. Mais le code ci-dessous est parfait:
class A
{
public static void display()
{
System.out.println("Inside static method of superclass");
}
}
class B extends A
{
public void show()
{
// This works - accessing display() by its simple name -
// meaning it is inherited according to the book.
display();
}
}
Comment puis-je utiliser directement display()
en classe B
? Encore plus, B.display()
fonctionne également.
L'explication du livre s'applique-t-elle uniquement aux méthodes d'instance?