Académique Documents
Professionnel Documents
Culture Documents
Java
I- Notion d’objet
Un objet est une entité du monde réel . On associe à
un objet une représentation informatique. On
distingue 2 types d’objets : les objets concrets qu’on
peut toucher du doigt (Personne, Livre, …) et les
objets abstraits (Compte bancaire, un Point, …). Un
objet possède les caractéristiques suivantes :
- Un ensemble de propriétés que l’on appelle des
attributs
- Un ensemble d’opérations que l’objet sait réaliser
ou que l ’on peut réaliser sur l’objet. Ces
opérations sont organisées en fonctions appelées
méthodes
- Un nom unique qui l’identifie dans un programme
Exemples :
Un point posséde comme attributs une abscisse x
et une ordonnée y. On peut définir une méthode
translater(…) qui est une fonction qui permet de
déplacer un point quelconque .
Types Classes
Variables instances d’objets
Fonctions Méthodes
public class C
{
//attributs et méthodes
}
Ce code sera stocké dans un fichier nommé C.java
Il faut noter que 2 objets issus d’une même famille
possèdent les mêmes attributs et mêmes méthodes
mais se différencient par leurs valeurs d’attributs et
les méthodes qu’ils réalisent à l’instant t.
Le nom d’une classe commence toujours par une
majuscule et chaque nouveau mot dans le nom
commence par une majuscule.
IV- Méthodes
Une méthode est une fonction qui réalise une
opération. Une méthode est toujours suivie de
parenthèses et peut être avec ou sans paramètres
(arguments)
Ex : méthode qui effectue la somme de 2 entiers
x et y
this.prenom=prenom ;
}
}
Nous constatons dans cet exemple que l’on a 2
attributs, 2 getters et 2 setters. On remarquera
l’utilisation du mot clé this au niveau d’un setter dû au
fait que l’attribut et le paramètre portent le même
nom. Ainsi pour les différencier, on met le mot this
devant l’attribut.
X-Notion de constructeur
Avant de pouvoir faire appel à un getter, un setter ou
autre méthode, on doit d’abord créer l’objet.
Créer un objet consiste à fixer les valeurs initiales de
ses attributs.
Cette opération se fait via une méthode spécifique de
la classe appelée un constructeur.
L’utilisateur doit spécifier au moins un ou plusieurs
constructeurs.
S’il n’en définit pas, le système propose un
constructeur par défaut qui crée des objets vides
c.a.d. des objets sans valeurs initiales des attributs. Il
faudra alors dans ce cas faire appel aux setters pour
fixer les valeurs initiales des attributs de l’objet.
L’utilisateur doit éviter le constructeur par défaut et
proposer son propre constructeur.
Le constructeur d’une classe C quelconque est une
méthode qui porte le même nom que la classe qui ne
possède pas de type de retour (même pas le type
void) et qui peut être avec ou sans paramètres. Si le
constructeur possède des arguments, ces derniers
représentent alors les valeurs initiales à fournir aux
arguments.
C’est pourquoi l’on dit que les objets sont créés à
partir de leurs classes ( rôle du constructeur). Les
objets sont alors des instances de leurs classes.
En général, la règle est la suivante :
Si une classe possède n attributs, le constructeur doit
alors posséder n arguments, un argument pour
initialiser chaque attribut.
Ainsi dans une classe , l’ordre de définition des
méthodes est le suivant :
- Définir un constructeur avec arguments
- Définir les getters et setters
- Définir les autres méthodes
Supposons que l’on dispose d’une classe Point pour
décrire les points dans un espace 2D. Chaque point
possède comme attributs l’abscisse x et l’ordonnée y
public class Point
{
private double x ;
private double y ;
//constructeur
public Point (double x , double y)
{
this.x=x ;
this.y=y ;
}
public double getX()
{
return x ;
}
public double getY()
{
return y ;
}
public void setX(double x)
{
this.x=x ;
}
public void setY(double y)
{
this.y=y ;
}
Analysons le constructeur
//constructeur
public Point (double x , double y)
{
this.x=x ;
this.y=y ;
}
Les paramètres x et y en arguments représentent les
valeurs initiales qu’il faut attribuer aux attributs x et
y. Cependant comme les arguments et les attributs
portent le même nom, on préfixe les attributs par le
mot this pour les différencier.
Ex :
public int somme (int x, int y)
{
return x+y ;
}
public double somme(double x, double y)
{
return x+y ;
}
//constructeur
public Point (double x , double y)
{
this.x=x ;
this.y=y ;
nombre++ ;
}
public double getX()
{
return x ;
}
public double getY()
{
return y ;
}
}
}