Connexion




Programmer Orienté Objet en Java

Par Arthur Martineau


<-- Utilisation de deux classes Accesseurs et mutateurs Les variables de classes -->


Accesseurs et mutateurs


Les accesseurs vont être le moyen qui va nous permettre d'agir sur nos variables d'objet en lecture, alors que les mutateurs nous permettrons d'agir sur nos variables d'objet en écriture.

On peut donc afficher les variables de nos objets grâce aux accesseurs et les modifier grâce aux mutateurs.

Nos méthodes accesseurs et mutateurs doivent bien évidemment être publiques afin d'être accessibles depuis les autres classes (sans quoi il n'y aurait pas d'interêt).

On peut retenir qu'un mutateur sera toujours de type void, car il ne renvoie rien. Alors qu'un accesseur renvoie une variable et sera donc du type de celle-ci.

 

Maintenant qu'on a créé les méthodes nous permettant d'afficher et de modifier nos objets, nous allons modifier la méthode main.

Pour cela, nous allons créer deux Voitures et afficher le tout en faisant appel à nos accesseurs.

Qui nous permet d'obtenir ceci :

Vous voyez tout de même qu'il est contraignant d'afficher le contenu de cette manière, mais il est possible de créer une méthode pour simplifier ça.

Nous allons donc créer une méthode dans notre classe Voiture faisant appel à une autre méthode de cette même classe.

 

Et pour cela, on va avoir besoin d'un mot clef this. Celui-ci va permettre de faire référence à l'objet courant, on pourra ainsi désigner les variables de notre objet au sein de celui-ci.

Puis il ne reste plus qu'à appeller cette nouvelle méthode dans le main.

En compilant vous obtiendez le même résultat, sauf que cette fois-ci votre code est plus propre.

 

Parlons de l'encapsulation, maintenant. Quel mot compliqué pour définir tout ce que l'on vient de faire.

Car oui, depuis le début de ce cours, je vous ai montré comment encapsuler un objet. 

Nous avons créé une classe accessible de l'extérieur uniquement via les accesseurs et les mutateurs que nous avons créés. Ca permet d'être toujours certain que les variables ne sont pas modifiées n'importe comment et donc d'avoir un fonctionnement interne à l'objet qui est intègré. 

 

Quel est l'utilité de tout ça ?

Et bien c'est très simple, lorsque quelqu'un développe un logiciel, il le fait rarement seul. Et pour les autres développeurs qui travaillent avec lui, il n'est pas important de savoir ce qui se passe dans la classe qui a été créée. La seule chose qui compte c'est de connaître les fonctionnailités qu'offre cette classe.



<-- Utilisation de deux classes Accesseurs et mutateurs Les variables de classes -->