Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Interface

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 12

INTERFACE

Inf-2120
v.201
CONTENUS

• Rôles
• Type et sous-types.
• Permet l’héritage multiple
• Notion de contrat
CONTENUS (SUITE)

• Exemple de base.
• Exemple simple
• Implémentation d’interface
• Exemple avec type générique : Eq
• Méthodes par défauts
• Héritage d’interfaces : Ord
CONTENUS (SUITE)

• Exemple extrait des librairies Java.


• Comparable.
• Boucle For augmentée.
• Iterable, Iterator.
• Fonctions
• Function, Predicate, Supplier, Consumer
• forEach.
RÔLES

• Les interfaces permettent de construire des sous-types. (Comme la


mécanique d’héritage.)
• Le mot clef implements indique les interfaces qui sont implémentées par la
classe.
• Une classe peu implementer zero, une ou plusieurs interfaces.
CONTRAT

• Un contrat va décrire le comportement d’un service (méthode).


• Il est composé des éléments suivants :
• Le nom de la méthode.
• Le type et le nombre des paramètres.
• Une description de la manipulation que la méthode va exécuter sur les arguments
• S’entendre sur l’utilisation d’une méthode.
• Un interface est une construction en Java qui peu contenir le contrat d’une ou
plusieurs méthode.
EXEMPLE 1

• Le type construit par un interface représente une qualification, celle


d’implémenter le contrat des méthodes de l’interface.
• Le comportement est similaire a une classe abstraite.
• Par contre il est possible d’implémenter plusieurs interface.
EXEMPLE 2

• Exemple avec type générique : Eq


• Méthodes par défauts
EXEMPLE 3

• Héritage d’interfaces : Ord


EXEMPLE 4

• Interface Comparable.
• Permet de désigner les classes contenant une relation d’ordre.
• Méthode compareTo.
EXEMPLE 5

• Interface Iterable.
• Désigne une classe contenant une fabrique d’itérateur.
• Méthode iterator().
• Interface Iterator.
• Désigne une classe pouvant être utilisé pour parcourir une Collection de valeur.
• Méthodes hasNext(), next().
• Boucle for augmentée.
EXEMPLE 6

• Fonctions
• Function< T, R > : R apply( T ).
• Predicate< T > : test( T ).
• Supplier< T > : T get().
• Consumer< T > : accept( T ).
• Exemple avec forEach().

Vous aimerez peut-être aussi