Menu
Coddy logo textTech

Classes vs Objets

Fait partie de la section Programmation Orientée Objet du Journey Java de Coddy — leçon 3 sur 87.

Une classe est un plan qui définit une structure. Un objet est une instance spécifique créée à partir de ce plan.

La classe (modèle)

public class Car {
    String brand;
    int year;
    
    public Car(String brand, int year) {
        this.brand = brand;
        this.year = year;
    }
    
    public String getInfo() {
        return this.brand + " (" + this.year + ")";
    }
}

Création d'objets (instances)

Car car1 = new Car("Tesla", 2023);
Car car2 = new Car("Honda", 2020);

System.out.println(car1.getInfo());  // Tesla (2023)
System.out.println(car2.getInfo());  // Honda (2020)

Chaque objet est indépendant. Modifier car1 n'affecte pas car2. Vous pouvez créer un nombre illimité d'objets à partir de la même classe, chacun ayant ses propres données.

challenge icon

Défi

Moyen

Créez une classe Car (le plan) et le programme créera deux objets différents (instances) à partir de celle-ci :

  • Champs : brand (String) et year (int)
  • Un constructeur qui définit les deux champs
  • Une méthode getInfo() retournant "<brand> (<year>)"

Aide-mémoire

Une classe est un plan qui définit une structure. Un objet est une instance spécifique créée à partir de ce plan.

Définir une classe :

public class Car {
    String brand;
    int year;
    
    public Car(String brand, int year) {
        this.brand = brand;
        this.year = year;
    }
    
    public String getInfo() {
        return this.brand + " (" + this.year + ")";
    }
}

Créer des objets à partir d'une classe :

Car car1 = new Car("Tesla", 2023);
Car car2 = new Car("Honda", 2020);

System.out.println(car1.getInfo());  // Tesla (2023)
System.out.println(car2.getInfo());  // Honda (2020)

Chaque objet est indépendant avec ses propres données. Vous pouvez créer un nombre illimité d'objets à partir de la même classe.

Essayez vous-même

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        String brand1 = scanner.nextLine();
        int year1 = Integer.parseInt(scanner.nextLine());
        String brand2 = scanner.nextLine();
        int year2 = Integer.parseInt(scanner.nextLine());
        
        Car car1 = new Car(brand1, year1);
        Car car2 = new Car(brand2, year2);
        
        System.out.println("Car 1: " + car1.getInfo());
        System.out.println("Car 2: " + car2.getInfo());
        System.out.println("Same car? " + (car1 == car2));
    }
}
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Programmation Orientée Objet