abstract.
Formellement une classe abstraite n'est pas différente d'une classe normale. Simplement, elle est déclarée en ajoutant le mot-clé
abstract, comme dans l'exemple suivant.
Exemple 86. Classe abstraite
public abstract class A { // déclarée dans le fichier A.java
public abstract void ouSuisJe() ; // pas de corps de méthode
}
Exemple 87. Extension d'une classe abstraite - 1
public class B extends A { // déclarée dans le fichier B.java
public void ouSuisJe() {
System.out.println("J'y suis j'y reste !") ;
}
}
Exemple 88. Extension d'une classe abstraite - 2
public abstract class A {
public abstract void ouSuisJe() ;
}
public abstract class B extends A {
public void ouSuisJe() {
System.out.println("Il est passé par ici") ;
}
}
public abstract class C extends B {
public abstract void ouVasTu() ;
}
public class D extends C {
public void ouVasTu() {
System.out.println("J'y retourne") ;
}
}
A, qui est abstraite ;
B, car même si elle n'a pas de méthode abstraite, elle est tout de même déclarée abstraite ;
C ;
D, qui possède bien une implémentation pour
ouSuisJe() (par extension de
B), et pour
ouVasTu().
String
StringBuffer et
StringBuilder