« Java/Classes et objets » : différence entre les versions

2 809 octets ajoutés ,  il y a 16 ans
Contenu supprimé Contenu ajouté
Suzy (discussion | contributions)
Aucun résumé des modifications
Ligne 90 :
Chaque instance de l'objet (ici chaque Point) aura des valeurs différentes pour ces variables, elles sont réellement sa représentation, et contrairement aux variables de classes, ce sont bien ces données là qui seront manipulées lors de l'exécution du programme.
 
==Constructeur, accesseurs et méthodes d'instance==
[[Catégorie:Java]]
Le '''constructeur''' comme son nom l'indique est la méthode qui sert à créer une instance d'un objet. Sa déclaration est particulière puisqu'un constructeur ne retourne rien (on ne peut pas avoir ''return'' dans un constructeur). On peut remarquer ici qu'il y a deux constructeurs :
*le constructeur par défaut, sans argument, il se contentera d'appeler le deuxième constructeur avec 0 et 0 en argument.
*le constructeur avec argument qui permet de créer un point avec les coordonnées x et y.
 
Plusieurs choses nouvelles apparaissent dans ces constructeurs :
*La première, qui n'est pas des plus simples à comprendre, est l'apparition de '''this'''. Ce terme est le plus important de la programmation par objet en Java. En effet, ce terme représente la future instance de l'objet. Ainsi ''this'' pointe déjà vers une instance de l'objet. La première utilisation que l'on peut remarquer, est celle qui en est faite dans le constructeur avec argument, ou les arguments porte le même nom que les variables d'instance mais ces dernières sont différenciées par l'apparition de ''this'' devant.
*La deuxième chose importante est '''le chaînage des constructeurs'''. Il peut paraître étrange d'avoir plusieurs constructeurs mais ils se différencient parfaitement par leurs arguments, il est donc possible d'avoir toute une panoplie de constructeurs. '''Le chaînage des constructeurs''' est donc le fait de faire appel à un constructeur dans un constructeur. On remarque alors que le constructeur par défaut fait appel au constructeur avec argument par ''this(0,0)'' avec les arguments 0 et 0.
*La dernière chose est le fait de ne pas faire appel directement aux variables d'instances mais plutôt aux accesseurs. Même si ici ce n'est pas franchement utile, on retiendra quand même cela comme une convention car cela permet de changer de représentation (changer les variables d'instance) sans ne jamais changer les constructeurs. Un exemple sera donner dans la partie consacrée aux accesseurs.
 
Remarque : Il n'est pas obligatoire d'avoir un constructeur pour créer des objets car Java en crée un par défaut. Cependant, ce constructeur par défaut initialisera toutes les variables d'instance à la valeur ''null'' quelque soit le type de donnée.
 
Il est maintenant intéressant de savoir comment utiliser ces constructeurs. Le meilleur moyen de le savoir est de créer quelques point.
 
<source lang="java">
Point monPoint = new Point() ;
//La création d'une instance se fait de cette manière, ici on remarque
//que Point est devenu un nouveau type de donnée, on a créé un objet.
//On a utiliser ici le constructeur par défaut, donc monPoint a pour
//coordonnées (0,0).
 
Point monPoint2 = new Point(2,1) ;
//On a créé ici un point de coordonnées (2,1).
</source>
 
==Accesseurs==
==Méthodes d'instance==
Utilisateur anonyme