Les interfaces et les variables
Bonjour, je ne comprend pas un concept fondamentale en java concernant les interfaces. Je précise que je suis un débutant invétéré.
Voilà j'ai compris le fonctionnement des classes, par exemple :
Code:
Personne p = new Personne();
Donc la on instancie un objet de type Personne dont la référence s'appelle p.
Ce que je ne comprend pas c'est pourquoi on fait un peu la même chose avec les interfaces. Je pensais qu'on ne pouvait pas instancié une interface, ou déclarer une référence à partir d'une interface, je pensais qu'on ne pouvait que l'implémenter... bref je suis bien perdu :yaisse2:
Je m'explique avec un exemple :
Code:
Iterator it = maCollection.iterator();
Ici par exemple je ne comprend pas pourquoi on déclare une référence it dont le type est l'interface Iterator :?
maCollection.iterator() me retourne un objet de type Iterator, et pourtant au lieu d'utiliser la classe Iterator, on utilise l'interface Iterator pour la variable it...
De la même manière, j'ai compris au niveau de l'architecture d'une application que les couches dialoguaient entres elles grâce aux interfaces pour pouvoir modifier facilement l'implémentation de celle ci. Mais je ne comprend pas par exemple, la synthaxe suivante (tiré du cours web3tiers p.11 dans les tutos du site):
Code:
private IArticlesDao articlesDao;
Il y a marqué qu'il s'agit de l'objet d'accès aux données fourni par la couche d'accès aux données 8O
Vous voyez un peu mon niveau :mouarf:
Merci de m'éclairer un peu...