Exemples langage
197
• en PHP, les attributs, comme les noms de variable, doivent commencer par $ ; en outre, un attribut nommé par exemple $ab devra être désigné dans une méthode par $this->abs et non par $abs (qui représenterait alors une variable locale à ladite méthode a ).
Utilisation d’une classe
Java, C# et PHP utilisent une gestion par référence dans laquelle on utilise new (au lieu de Création)
pour instancier des objets :
Point p ; // ($p en PHP) : p est une référence sur un objet de type Point
...
p = new Point (3, 5) ; // crée un objet de type Point, en appelant un constructeur
C++ utilise une gestion par valeur, dans laquelle la déclaration d’un objet en provoque la création :
Point p (3, 5) ; // crée un objet p de type Point, en appelant un constructeur
Mais on peut également, en C++ créer dynamiquement des objets, en utilisant des pointeurs qui jouent
alors le rôle de nos références :
Point *adp ; // adp est un pointeur contenant l’adresse d’un objet de type Point
...
• adp = new Point (3,5) ; // crée un objet de type Point, en appelant un constructeur
a.Cette complication est due, en partie, au fait que PHP ne déclare pas les types des variables.
Exemples langage
Voici comment se présenterait, dans chacun des langages C++, Java, C# et PHP, notre exemple du paragraphe 5.3, page 190, à savoir une classe Point, dotée des trois constructeurs, d’une méthode deplace
et d’une méthode affiche.
Java
En Java, en principe, un fichier source ne contient qu’une seule classe dont il doit porter le nom. Il est
cependant possible d’y placer plusieurs classes mais, dans ce cas, une seule d’entre elles (déclarée avec
l’accès public) sera utilisable. Les autres classes ne seront accessibles qu’à la classe principale (déclarée public) du fichier. C’est ainsi que nous avons procédé : la classe principale TstPoint contient la
méthode main et utilise la classe Point, « cachée » dans le fichier. Dans un programme véritable, on
créerait deux fichiers distincts, l’un nommé TstPoint, contenant la classe TstPoint (déclarée publique), l’autre nommé Point contenant la classe Point, déclarée alors publique.
Précédent

- 220/370

Suivant