Exercices corrigés Java les classes et l’héritage – Partie 1
Avec des exercices corrigés en Java sur les classes et l’héritage, vous pratiquerez divers concepts du langage Java. Vous commencerez par des exercices Java de base à des exercices plus avancés. La solution est fournie pour chaque exercice. Vous devez essayer de résoudre chaque problème par vous-même avant de vérifier la solution. Si vous avez des questions concernant chaque problème, nous vous encourageons à les poster sur notre forum.
Exercice 1:
Écrivez une classe « Rectangle » ayant deux variables « a » et « b » et une fonction membre « surface() » qui retournera la surface du rectangle.

import java.util.*;
class Rectangle {
public int a,b;
public int surface(){
return a*b;
}
}
public class Test{
public static void main(String []args){
Rectangle rectangle = new Rectangle();
Scanner in = new Scanner(System.in);
System.out.println("Entrez la largeur(a) du rectangle :");
rectangle.a = in.nextInt();
System.out.println("Entrez la longueur(b) du rectangle :");
rectangle.b = in.nextInt();
System.out.println("Surface : "+ rectangle.surface());
in.close();
}
}
Exercice 2:
Écrivez une classe « Somme » ayant deux variables « n1 » et « n2 » et une fonction membre « sum() » qui calcule la somme. Dans la méthode principale main demandez à l’utilisateur d’entrez deux entiers et passez-les au constructeur par défaut de la classe « Somme » et afficher le résultat de l’addition des deux nombres.
import java.util.*;
class Somme {
public int n1, n2;
//constructeur par défaut
Somme(int nbr1, int nbr2){
n1 = nbr1;
n2 = nbr2;
System.out.println("Les nombres sont initialisés.");
}
public int sum(){
return n1 + n2;
}
}
public class Main {
public static void main(String []args){
Scanner in = new Scanner(System.in);
System.out.println("Entrez le premier nombre :");
int n1 = in.nextInt();
System.out.println("Entrez le deuxième nombre :");
int n2 = in.nextInt();
//appeler le constructeur par défaut.
Somme s = new Somme(n1,n2);
System.out.println("Le résultat de l'addition est : "+ s.sum());
in.close();
}
}
Exercice 3:
Écrivez une classe Java appelée « Student » avec les membres suivant :
- nom (de type String),
- note1, note2 (de type int)
Le programme demande à l’utilisateur d’entrer le nom et les notes. calc_moy() calcule la note moyenne et show() affiche le nom et la note moyenne.
import java.util.*;
class Student {
public String nom;
public int note1, note2;
Student(String nom, int note1, int note2){
this.nom = nom;
this.note1 = note1;
this.note2 = note2;
}
public int calc_moy(){
return (note1 + note2)/2;
}
public void show(){
System.out.println("Étudiant: "+ nom +" \n moyenne: "+ calc_moy());
}
}
public class Main{
public static void main(String []args){
Scanner in = new Scanner(System.in);
System.out.println("Entrez le nom: ");
String nom = in.nextLine();
System.out.println("Entrez les notes de deux matiéres: ");
int note1 = in.nextInt();
int note2 = in.nextInt();
Student s = new Student(nom, note1, note2);
s.show();
in.close();
}
}
Exercice 4:
Effectuez une opération d’addition sur des nombres complexes à l’aide d’une classe Java appelée « Complex ». Le programme doit demander la partie réelle et imaginaire de deux nombres complexes et afficher les parties réelle et imaginaire de leur somme.
Exemple:
Premier nombre Entrez la partie réelle: 1 Entrez la partie imaginaire: 4 Deuxième nombre Entrez la partie réelle: 2 Entrez la partie imaginaire: 3 La somme est 3 + 7i
import java.util.*;
public class Complex{
double real, img;
Complex(double r, double i){
this.real = r;
this.img = i;
}
public static Complex somme(Complex c1, Complex c2)
{
Complex c = new Complex(0, 0);
c.real = c1.real + c2.real;
c.img = c1.img + c2.img;
return c;
}
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
System.out.println("Premier nombre");
System.out.println("Entrez la partie réelle: ");
double r1 = in.nextDouble();
System.out.println("Entrez la partie imaginaire: ");
double i1 = in.nextDouble();
Complex c1 = new Complex(r1, i1);
System.out.println("Deuxième nombre");
System.out.println("Entrez la partie réelle: ");
double r2 = in.nextDouble();
System.out.println("Entrez la partie imaginaire: ");
double i2 = in.nextDouble();
Complex c2 = new Complex(r2, i2);
// calculer la somme des deux nombres complexes c1 et c2
Complex c = somme(c1, c2);
System.out.printf("La somme est: "+ c.real+" + "+ c.img +"i");
}
}
Exercice 5:
Créez une classe appelée « Point ». Cette classe doit avoir 2 entiers (x, y) en tant que membres privés. Le constructeur doit définir les valeurs de x et y via des paramètres. La classe doit avoir une méthode publique appelée « distance ». Cela prend un seul paramètre(Point) et renvoie la distance entre les 2 points.

Exemple:
P1 (5,6) P2 (3,2) La distance entre P1 et P2 est : 4.47214
import java.lang.Math;
class Point {
private double x;
private double y;
Point(double x, double y)
{
this.x = x;
this.y = y;
}
public double getX()
{
return x;
}
public double getY()
{
return y;
}
public double distance(Point p)
{
double px = this.getX() - p.getX();
double py = this.getY() - p.getY();
return Math.sqrt(px * px + py * py);
}
}
public class Test {
public static void main(String []args){
Point p1 = new Point(5, 6);
Point p2 = new Point(3, 2);
System.out.println("P1 ("+ p1.getX() +","+ p1.getY() +")");
System.out.println("P2 ("+ p2.getX() +","+ p2.getY() +")");
System.out.println("La distance entre P1 et P2 est : "+p1.distance(p2));
}
}
Éditeur de code Java: Testez votre code en ligne!




