Java >> Tutoriel Java >  >> Java

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.


Balise Java