L'héritage se dénote par le mot-clef extends.
public class Person { private String firstName; private String lastName; public Person(String firstName, String lastName) { this.firstName = firstName; this.lastName = lastName; } }
public class Employee extends Person { private Employee supervisor = null; public Employee(String fn, String ln, Employee supervisor) { super(fn, ln); // réutilisation du constructeur de Person this.supervisor = supervisor; } }
Méthode d'instance de la superclasse | Méthode statique de la superclasse | |
---|---|---|
Méthode d'instance de la sous-classe | Redéfinition (override) | Erreur de compilation |
Méthode statique de la sous-classe | Erreur de compilation | Dissimulation (hiding) |
public class Person { [...] public void toString() { return firstName+" "+lastName; } [...] }
public class Student extends Person { private int idNumber; public void toString() { return super.toString() + ". Id number is "+this.idNumber; //super.toString() appelle la méthode toString() de la //classe Person } }
ArrayList<Person> myList = new ArrayList<Person>(); myList.add(new Person("Jean")); myList.add(new Person("Hugues")); for(Person p : myList) { System.out.println(p); }
INFO-H-301 | 1 |
---|---|
Héritage | 2 |
En Java | 3 |
Héritage et protection | 4 |
Masquer et redéfinir | 5 |
Masquer et redéfinir | 6 |
Redéfinition de méthode d'instance | 7 |
Les Listes | 8 |
Table of Contents | t |
---|---|
Exposé | ESC |
Full screen slides | e |
Presenter View | p |
Source Files | s |
Slide Numbers | n |
Toggle screen blanking | b |
Show/hide slide context | c |
Notes | 2 |
Help | h |