0% ont trouvé ce document utile (0 vote)
39 vues30 pages

Java 03

Transféré par

Chiraz Ben Boubaker
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
39 vues30 pages

Java 03

Transféré par

Chiraz Ben Boubaker
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

POO

Java Rappels de cours + TP

15/10/2021 1
Rappels


Java est un langage purement Orienté Objets


Chaque objet appartient OBLIGATOIREMENT à une classe


La création d’un objet à partir d’une classe → instanciation

15/10/2021 2
Rappels


L’opérateur new() permet de créer un objet


Allocation mémoire → création


Appel à la méthode constructeur

15/10/2021 3
Constructeur


Permet d’initialiser un objet


C’est une méthode publique ayant le même nom que la classe

15/10/2021 4
Programme principal

public static void main (String[] args)


{

15/10/2021 5
Exercice


Soit la classe point()
– Définir 2 points x et y
– Définir un constructeur permettant d’initialiser le point
– Définir une méthode affiche () qui permet d’afficher les coordonnées
d’un point
– Définir une méthode deplacer() qui permet de déplacer un point

15/10/2021 6
Décomposition du
programme

→ Créer une classe appelée point


→ Définir 2 attributs x et y

15/10/2021 7
Déclarations

public class point


{
float x ;
float y ;
}

15/10/2021 8
Constructeur

→ Méthode ayant le même nom que la classe

→ Sans type de retour

→ visibilité : public

15/10/2021 9
Constructeur

public point (float abs, float ord)


{
this.x = abs ;
this.y = ord ;
}

15/10/2021 10
Affichage


C’est une méthode qui permet d’afficher les coordonnées d’un
point

15/10/2021 11
Affichage

public void affiche ()


{
[Link] ("Je suis un point de coordonnees " + x + " "
+ y) ;
}

15/10/2021 12
Déplacement


C’est une méthode qui permet de changer les coordonnées
d’un point.


Ce changement affecte la valeur de l’abscisse et/ou ordonnée
d’un point


On a besoin de 2 paramètres : dx et dy

15/10/2021 13
Déplacement

public void deplace (int dx, int dy)


{
x += dx ;
y += dy ;
}

15/10/2021 14
Programme principal


Définir un point a ;

Initialiser le point a via le constructeur

Afficher les coordonnées du point a

Déplacer le point a

Afficher de nouveau des nouvelles coordonnées du point a

15/10/2021 15
Programme principal

Point a = new Point(0,-1) ;


[Link]() ;
[Link](8, 3) ;
[Link]() ;

15/10/2021 16
Définition d’un deuxième
point
Point b;
b = new Point(4, 5) ;
[Link]() ;

15/10/2021 17
Programme Complet

class Point
{
public Point (int abs, int ord) // constructeur
{
this.x = abs ;
this.y = ord ;
}

15/10/2021 18
Programme Complet

public void deplace (int dx, int dy)


{
x += dx ;
y += dy ;
}

15/10/2021 19
Programme complet

public void affiche ()


{
[Link] ("Je suis un point de coordonnees " + x + "
"+ y) ;
}

15/10/2021 20
Programme complet

private float x ; // abscisse


private float y ; // ordonnee
public static void main (String args[])
{
Point a = new Point (0,-1) ;
[Link]() ;
[Link](8,3) ;
[Link]() ;
15/10/2021 21
Programme Complet

Point b;
b = new Point(4, 5) ;
[Link]() ;
}
}

15/10/2021 22
Exécution

Je suis un point de coordonnees 0.0 -1.0

Je suis un point de coordonnees 8.0 2.0

Je suis un point de coordonnees 4.0 5.0

15/10/2021 23
Question


Que ce passe-il si aucun constructeur n’est défini ?

15/10/2021 24
Réponse


Dans ce cas :
– On ne déclare pas de méthode constructeur
– Utilisation du constructeur par défaut
– L’opérateur new () est utilisé sas paramètres
– Les variables seront initialisés à leur valeur par défaut :

0 pour les valeurs numériques

\0 pour les valeurs textuelles

15/10/2021 25
Exemple


Reprenons le même exemple sachant que :
– La méthode constructeur sera éliminée
– L’instanciation des nouvelles objets est modifiée

15/10/2021 26
Exemple

class Point2
{
public void deplace (int dx, int dy)
{
x += dx ;
y += dy ;
}

15/10/2021 27
public void affiche ()
{
[Link] ("Je suis un point de coordonnees " + x + " "
+ y) ;
}

15/10/2021 28
Exemple

private float x ; // abscisse


private float y ; // ordonnee

public static void main (String args[])


{
Point2 a = new Point2();
[Link]();
[Link](8,3) ;
[Link]() ;
15/10/2021 29
Exemple

Point2 b;
b = new Point2();
[Link]() ;
}
}

15/10/2021 30

Vous aimerez peut-être aussi