![]()
| ||||||||||
Java - Les classes
La notion d'objetLe langage Java intègre fortement le concept objet, il s'agit donc d'un
langage orienté objet (LOO). Le terme langage orienté objetest plus qu'une simple appellation de plus pour désigner un type de langage, il s'agit
réellement d'une façon de programmer à part entière, un état
d'esprit... Les classes avec JavaPour pouvoir manipuler des objets, il est essentiel de définir des classes, c'est-à-dire définir la structure d'un objet. Cette définition avec Java se fait de la manière suivante :
class Nom_de_la_classe {
// Instructions permettant de définir la classe;}
Nom_de_la_classe représente bien évidemment le type d'objet désignépar la classe ou du moins le nom que vous leur attribuez.
Déclaration des données membresJusqu'ici notre classe est vide (elle est toutefois syntaxiquement correcte), c'est-à-dire qu'elle ne contient ni données (appelées données membres) ni traitements (fonctions appelées méthodes). Les données membres sont des variables stockées au sein d'une classe. Elles
doivent être précédées de leur type et (éventuellement) d'une étiquette précisant
leur portée, c'est-à-dire les classes ayant le droit d'y accéder.
Ainsi, une classe comportant trois données membres peut ressembler par exemple à ceci :
class Voiture {
public char Marque[32]; private float Vitesse; protected int Prix;}Déclaration des méthodesLes données membres permettent de conserver des informations relatives àla classe, tandis que les méthodes représentent les traitements qu'il est possible de réaliser avec les objets instanciés de la classe. On parle généralement de méthodes (parfois fonctions membres) pour désigner ces traitements. La définition d'une méthode se fait en définissant le prototype et le corps de la fonction à l'intérieur de la classe en une opération Voici donc la syntaxe de définition des méthodes :
class Nom_de_la_classe {
// Instructions permettant de définir les données membres de la classe; ...; // Instructions permettant de définir les méthodes de la classe; type_de_valeur_renvoyée Nom_de_la_methode(type_du_parametre1,
type_du_parametre2, ..){
// Instructions du corps de la méthode
}
}
Etant donné que l'encapsulation doit permettre la protection des données
membres (qui sont alors précédées de l'étiquette private ouprotected), les fonctions membres doivent pouvoir servir d'interface pour manipuler les
données membres. On place donc l'étiquette publique devant les fonctions membres
dédiées à la manipulation des données membres. Ce système permet
de garantir l'intégrité des données membres. En effet, si l'utilisateur de
la classe ne peut pas modifier les données membres directement, il est obligé d'utiliser
l'interface (les fonctions membres) pour les modifier, ce qui peut permettre au créateur de la classe
d'effectuer des contrôles... |
||||||||||