Programmation Java
Master M2 TTT --- Feuille n° 1
Classes, objets, et délégation
Exercice n° 1
Exercice n° 2
En Java, les chaînes de caractères sont représentées par des objets de la
classe String, dont les instances sont non mutables. On
souhaite pouvoir convertir des chaînes de caractères contenant des
nombres en valeur entières. Le faire en utilisant la méthode statique
static int parseInt(String) de la classe Integer.
Définir une chaîne de caractères contenant un entier et obtenir sa valeur
sous forme d'entier (int). Faire attention au fait que la
méthode parseInt peut lever l'exception
NumberFormatException.
Exercice n° 3 (Pixel)
-
Reprendre la classe Pixel et ajouter un
constructeur par défaut. Que se passe-t-il si on écrit Pixel p =
new Pixel(); alors que ce constructeur n'est pas écrit dans la
classe Pixel ?
-
Ajouter une méthode void translate(int d) qui déplace
un point en changeant sa coordonnée x en x + d
et sa coordonnée y en y + d.
Comment cette méthode cohabite-t-elle avec la méthode
void translate(int dx, int dy) déjà écrite ?
Exercice n° 4 (Circle)
-
Créer une classe Circle pour représenter des cercles.
Les attributs d'un cercle seront une point (de la classe Pixel)
représentant le centre du cercle, et un rayon (de la classe int).
-
Écrire dans cette classe deux constructeurs, l'un prenant en argument
un point (de la classe Pixel) et un entier. L'autre prendra en
argument trois entiers dont les deux premiers seront les coordonnées du centre
du cercle.
-
Écrire une méthode void translate(int dx, int dy) qui permet
de déplacer le cercle.
-
Écrire ce qu'il faut dans la classe pour que lorsqu'on affiche un
cercle, on obtienne les coordonnées de son centre et son rayon; par exemple
System.out.println(c); doit afficher
(1,1),3 pour un cercle centré sur le point de coordonnées (1,1)
et de rayon 3.
-
Écrire la méthode public boolean equals(Object o) qui teste si
deux cercles sont égaux (même coordonnées du centre et même rayon).
Exercice n° 5 (Matrix)
- Écrire une classe Matrix qui contient comme attribut
un tableau à double entrée d'entiers.
-
Écrire un constructeur prenant en arguments trois entiers n,m et x,
qui crée une matrice rectangulaire
de taille n x m (à n lignes et m colonnes) comportant
des x partout.
-
Écrire un constructeur qui crée une matrice carrée
de taille n x n comportant des x partout.
-
Écrire une fonction Matrix add (Matrix m2) qui renvoie
la somme de la matrice courante avec la matrice passée en argument.
-
Écrire une méthode main dans une classe Test
qui teste les constructeurs et méthodes précédentes.