suivant: Réaliser une interface
monter: Abstraction et sous-typage
précédent: Abstraction et sous-typage
  Table des matières
  Index
Interfaces
Java offre en effet à côté des classes une autre catégorie de types, les
interfaces. Rappelons que les classes de Java ont trois rôles :
- de typage, au sens usuel, ce qui permet de déclarer des noms d'un
certain type et de vérifier que les expressions où ils apparaissent
sont correctement typées ;
- de définition du comportement des objets, en définissant des
méthodes ;
- de moule, pour construire leurs instances.
Les interfaces ne remplissent que le premier de ces trois rôles : ce
sont des types abstraits au sens où elles ne définissent aucune
méthode et ne comportent pas de constructeur : une interface
déclare uniquement des méthodes publiques, le corps de la méthode étant
remplacé par un « ; ». On ne peut pas créer un objet d'un
type abstrait : une interface n'a pas d'instance, l'expression
new Forme() n'est pas correcte.
Pour faire de Point, Cercle et Rectangle des
sous-types de Forme, il suffit de déclarer qu'ils
réalisent (ou implémentent) l'interface Forme, au moyen
du mot-clé implements :
class Cercle implements Forme { ... }
class Point implements Forme { ... }
class Rectangle implements Forme { ... }
On dit parfois que ces trois classes sont des types concrets pour les
distinguer des types abstraits. Le mot-clé implements peut
être suivi de plusieurs noms d'interfaces ; la classe est alors
considérée comme un sous-type de chacune de ces interfaces.
suivant: Réaliser une interface
monter: Abstraction et sous-typage
précédent: Abstraction et sous-typage
  Table des matières
  Index
Rene' LALEMENT
2002-11-07