Java prend en charge l'héritage comme fonctionnalité centrale, ce qui permet ensuite de mettre en œuvre de nombreux principes de la POO, comme l'abstraction.
Une classe peut étendre une autre classe à l'aide du mot-clé extends et peut hériter d'une interface à l'aide du mot-clé implements.
Les modificateurs d'accès définissent les règles d'accès aux variables membres et aux méthodes d'une classe depuis d'autres classes (ou depuis n'importe où dans le code).
Il existe quatre modificateurs d'accès :
privatepublicprotectedTu peux en apprendre plus à leur sujet dans cet article
Ces deux concepts sont très proches et sont souvent confondus.
interface Animal() {
public void bark();
}
class Dog implements Animal {
public void bark() {
System.out.println("Bark");
}
}
Ici, Dog a une relation IS-A avec Animal
interface Engine {
}
class Car {
private Engine engine;
}
Ici, Car a une relation HAS-A avec Engine