Menu
Coddy logo textTech

Champs (Attributs)

Fait partie de la section Programmation Orientée Objet du Journey Java de Coddy. Leçon 6 sur 87.

Les champs (attributs) sont des variables qui stockent des données à l’intérieur d’une classe. Ils sont généralement private et accessibles par l’intermédiaire de méthodes getter et setter.

Déclarer des champs

public class Person {
    private String name;
    private int age;
}

Ajouter des getters et des setters

public class Person {
    private String name;
    private int age;
    
    public String getName() {
        return this.name;
    }
    
    public void setName(String name) {
        this.name = name;
    }
    
    public int getAge() {
        return this.age;
    }
    
    public void setAge(int age) {
        if (age >= 0) {
            this.age = age;
        }
    }
}

Utiliser la classe

Person person = new Person();
person.setName("Alice");
person.setAge(25);
System.out.println(person.getName());  // Alice

Rendre les champs private s’appelle l’encapsulation. Cela protège les données en contrôlant l’accès par l’intermédiaire de méthodes, ce qui vous permet d’ajouter une validation dans les setters.

challenge icon

Défi

Moyen

Créez une classe BankAccount avec des champs privés et des méthodes getter :

  • Champs privés : accountName (String) et balance (double)
  • Un constructeur pour définir les deux champs
  • Des méthodes getter pour chaque champ
  • Une méthode deposit() pour ajouter de l’argent
  • Une méthode withdraw() qui renvoie « Success » ou « Insufficient funds »

Essayez vous-même

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String name = scanner.nextLine();
        double initial = Double.parseDouble(scanner.nextLine());
        double deposit = Double.parseDouble(scanner.nextLine());
        
        BankAccount account = new BankAccount(name, initial);
        
        System.out.println("Account: " + account.getAccountName());
        System.out.println("Balance: " + account.getBalance());
        
        account.deposit(deposit);
        System.out.println("After deposit: " + account.getBalance());
        
        String result = account.withdraw(2000);
        System.out.println("Withdraw 2000: " + result);
        System.out.println("Final Balance: " + account.getBalance());
    }
}
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

Entraînez-vous par vous-même : Compilateur Java en ligne