Java et le Café : Protéger les Recettes avec l'Encapsulation

Introduction

L’encapsulation en Java est comme garder les recettes de café secrètes et protégées. Elle permet de contrôler l’accès aux ingrédients (variables) et aux méthodes de préparation (méthodes) de vos classes, garantissant que le café est toujours préparé correctement.

Les Modificateurs d’Accès

Les modificateurs d’accès en Java sont comme les règles pour accéder aux ingrédients d’une recette de café. Ils déterminent qui peut voir et modifier les variables et les méthodes de votre classe.

Private

Le modificateur private est comme un ingrédient secret. Seuls les membres de la classe peuvent y accéder.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
public class Cafe {
  private String type; // Accessible seulement dans cette classe

  public Cafe(String type) {
    this.type = type;
  }

  public String getType() { // Méthode publique pour accéder à la variable privée
    return type;
  }
}

public class Barista {
  public static void main(String[] args) {
    Cafe cafe = new Cafe("Espresso");
    System.out.println("Servir un " + cafe.getType()); // Utilisation de la méthode get
  }
}
1
2
$ java Barista
Servir un Espresso.

Public et Protected

Les modificateurs public et protected permettent un accès plus large aux membres de la classe, avec des différences subtiles dans leur portée. Utilisez-les judicieusement pour contrôler l’accès à vos recettes.

Encapsulation et Constructeurs

L’encapsulation permet également de contrôler la manière dont les objets sont créés, en utilisant des constructeurs et des méthodes get et set.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
public class Cafe {
  private String type;
  private int sucre;

  public Cafe(String type, int sucre) {
    setType(type);
    setSucre(sucre);
  }

  public String getType() { // Méthode get pour accéder à la variable privée
    return type;
  }

  public int getSucre() { // Méthode get pour accéder à la variable privée
    return sucre;
  }

  public void setType(String type) {
    if (type != null) {
      this.type = type;
    }
  }

  public void setSucre(int sucre) {
    if (sucre >= 0) {
      this.sucre = sucre;
    }
  }
}

public class Barista {
  public static void main(String[] args) {
    Cafe cafe = new Cafe("Latte", 2);
    System.out.println("Servir un " + cafe.getType() + " avec " + cafe.getSucre() + " sucres."); // Utilisation des méthodes get
  }
}
1
2
$ java Barista
Servir un Latte avec 2 sucres.

Conclusion

L’encapsulation en Java vous permet de protéger et de contrôler l’accès aux ingrédients et aux méthodes de préparation de vos classes. Comme un barista protège ses recettes de café secrètes, utilisez l’encapsulation pour garder votre code propre, sûr et délicieux.