Encapsulation Java | Définition, avantages avec exemples
Définition d'encapsulation : L'encapsulation est l'un des concepts piliers de la programmation orientée objet. L'encapsulation Java Le mécanisme encapsule les données (variables) et les méthodes dans une seule unité. Où les variables d'une classe sont cachées des autres classes et ne sont accessibles que par les méthodes (Getter – Setter) de leur classe actuelle.
Il s'agit de la définition d'encapsulation Java, maintenant dans le didacticiel, vous apprendrez à la créer et à l'utiliser avec des exemples.
Comment faire de l'encapsulation en Java ?
Voici quelques étapes pour réaliser l'encapsulation, vous devez d'abord créer une classe, puis suivre les étapes.
- Déclarez toutes les variables comme privées (modificateurs d'accès) dans la classe.
- Créer un setter-getter public méthodes pour accéder et mettre à jour la valeur des variables privées.
Exemple d'encapsulation Java
Voici un exemple très simple d'exemple de code et de programme d'encapsulation Java.
Créez un Student.java, avec une variable "name" privée. Et générer Getter et Setter méthodes pour cela. Si vous ne savez pas comment créer Getter et Setter méthodes, puis regardez le tutoriel l'aide rubrique mentionné toutes les étapes avec des captures d'écran.
public class Student { //private data member private String name; //getter method for name public String getName() { return name; } //setter method for name public void setName(String name) { this.name = name; } }
Maintenant, une autre classe Hello.java accédera à cette variable via des méthodes comme l'exemple ci-dessous.
class Hello { public static void main(String[] args) { // Creating instance of the encapsulated student class Student s = new Student(); // Setting value s.setName("John"); // Getting System.out.println(s.getName()); } }
Sortie : Jean
Classe en lecture seule
Vous ne pouvez lire que les variables dans ce code. Pour cela, ne générez que des méthodes getter pour les variables.
public class Student { //private data member private String name; //getter method for name public String getName() { return name; } }
Classe en écriture seule
Vous ne pouvez écrire que les variables dans ce code. Pour cela, ne générez que des méthodes Setter pour les variables.
public class Student { //private data member private String name; //setter method for name public void setName(String name) { this.name = name; } }
Quels sont les avantages de l'encapsulation en Java ?
Il y a plusieurs avantages à utiliser le concept d'encapsulation dans le code, voyons-le.
- Vous pouvez rendre la classe en lecture seule ou en écriture seule par la méthode setter ou getter. Cela signifie que votre variable de classe ne peut avoir qu'une autorisation de lecture ou d'écriture en choisissant d'utiliser la méthode. Vous pouvez ignorer les méthodes getter ou setter.
- Contrôle des données :peut contrôler les données du magasin. Si vous souhaitez un entier positif uniquement, vous pouvez alors écrire la logique dans la méthode.
- Masquage des données :en déclarant une variable (données) privée, elle sera masquée pour les autres classes.
- Tests faciles :possibilité d'effectuer facilement des tests unitaires.
- Flexible :vous pouvez modifier une partie du code sans affecter les autres parties du codage.
Dernier avantage mais non, la fonction IDE génère des getters et des setters. il est très utile pour créer des getters et des setters en Java ou dans d'autres langages de programmation.
L'encapsulation dans oops est très utile car vous voyez l'exemple ci-dessus comme un avantage, ce n'est pas seulement dans la programmation java. D'autres langages de programmation basés également sur des concepts de programmation orientés objet présentent ces avantages.
Q :Comment générer un getter et un setter en Java ?
Il est facile de générer un getter et un setter à l'aide d'un IDE, voici les étapes à suivre.
1 étape : Faites un clic droit sur une variable, la pop s'ouvrira puis cliquez sur Générer…
2 étapes : Une autre pop s'ouvrira, sélectionnez Getter et Setter et cliquez dessus.
3 étapes : Dernière étape, sélectionnez les variables , lequel voulez-vous créer Getter et Setter, et cliquez sur OK, toutes les méthodes seront générées dans votre classe.
Avec la même étape 2, vous pouvez générer uniquement Getter ou Setter. Faites un commentaire en cas de doute sur l'encapsulation.
N'hésitez pas à commenter si vous avez des questions et des suggestions sur ce tutoriel.