Maison  >  Article  >  Java  >  Quel est le concept de l'encapsulation Java

Quel est le concept de l'encapsulation Java

WBOY
WBOYavant
2023-05-09 08:52:221731parcourir

Encapsulation

Le concept d'encapsulation

cache certaines informations d'une classe à l'intérieur de la classe et ne permet pas un accès direct par des programmes externes, mais est fourni via la classe méthodes pour exploiter et accéder aux informations cachées.

Pourquoi l'encapsulation est-elle nécessaire ?

Lorsque nous créons un objet d'une classe, nous pouvons attribuer des valeurs aux propriétés de l'objet via "object.properties". L'opération d'affectation ici est limitée par le type de données et la plage de stockage de l'attribut. En dehors de cela, il n’y a pas d’autres contraintes. Cependant, dans des problèmes pratiques, nous devons souvent ajouter des contraintes supplémentaires à l’attribution des attributs. Cette condition ne peut pas être reflétée dans la déclaration d'attribut. Nous ne pouvons ajouter des conditions restrictives que via des méthodes. Dans le même temps, nous devons empêcher les utilisateurs d'utiliser la méthode "object.property" pour attribuer des valeurs aux propriétés, nous devons donc déclarer les propriétés comme privées.

Avantages de l'encapsulation :

1. Une bonne encapsulation peut réduire le couplage.

2. La structure à l'intérieur de la classe peut être modifiée librement.

3. Les variables membres peuvent être contrôlées plus précisément.

4. Masquez les informations et mettez en œuvre les détails.

Étapes de mise en œuvre de l'encapsulation

(1) Modifier l'attribut en privé

(2) Créer une méthode getter/setter, à travers ces deux méthodes Le les données sont obtenues et définies, et l'objet lit et écrit les données en appelant ces deux méthodes d'envoi.

class person{
  private int age;//修改属性为private
public int getAge(){
  return age;
}
public void setAge(int a){
   age = a;
   }
 }

Encapsulation masque la complexité interne de l'objet et n'expose que des interfaces simples pour faciliter les appels externes. L'incarnation de l'encapsulation nécessite des modificateurs d'autorisation pour correspondre.

Package en Java

Package en Java permet de mieux gérer les classes du projet et de résoudre les conflits de fichiers du même nom. Lorsqu'il s'agit de packages en Java, alors. Nous devons mentionner le mot-clé package. Nous utilisons généralement package pour déclarer le package auquel appartient une classe ou une interface. La déclaration se trouve dans la première ligne du fichier source, par exemple package java.lang représente une couche de. répertoires de fichiers et ne peuvent pas être inclus dans le même package. Vous pouvez nommer des interfaces et des classes avec le même nom dans différents packages. Pour utiliser le package, vous devez utiliser le mot-clé import. Utilisez la structure d'importation affichée dans le fichier source pour importer. les classes et les interfaces sous le package spécifié. Habituellement, l'instruction d'importation se trouve dans la déclaration et la classe du package, entre les déclarations, en Java, la spécification du nom du package est orthographiée en lettres minuscules

Membres de. classes en java - constructeurs

Toute classe a un constructeur Utilisé pour créer des objets et initialiser les propriétés des objets Méthodes de création d'objets d'une classe : nouveau + constructeur, tel que Person p = new Person();S'il y a. n'est-ce pas un constructeur explicite défini pour la classe, le système fournira un constructeur avec des paramètres vides par défaut (liste formelle des paramètres) {}

Résumé : Attributs L'ordre d'affectation :

1 Initialisation par défaut

2 Initialisation explicite # 🎜🎜#

3 Initialisation dans le constructeur

4 Affectation via la méthode de "Object.Method" ou "Object.Property"

Le mot-clé this en java

ce mot-clé peut être utilisé pour modifier : les attributs, la méthode construit le périphérique, cela s'entend comme : l'objet courant ou l'objet en cours de création

Dans la méthode de la classe , nous pouvons utiliser "this.property" ou "this.method" pour appeler la propriété ou la méthode de l'objet actuel. Mais généralement, nous choisissons d’omettre « ceci ». Dans des cas particuliers, si le paramètre formel de la méthode porte le même nom que l'attribut de la classe, il faut explicitement utiliser "this. variable" pour indiquer que la variable est un attribut.

Il en va de même pour le constructeur d'une classe. Appelez un constructeur avec des paramètres vides : this(); si vous appelez un constructeur avec des paramètres tels que public Person (int age), vous pouvez utiliser this( age) pour effectuer l'appel. Cependant, le constructeur ne peut pas s'appeler lui-même et ne peut appeler que d'autres constructeurs. S'il y a n constructeurs, alors seuls n-1 constructeurs peuvent être appelés en utilisant cette méthode, et le constructeur cet appel doit être déclaré dans le fichier. constructeur. Dans la première ligne, cela peut également être utilisé pour comparer les tailles entre les objets.

public class Boy {
    private int age;
    public int getAge() {
        return age;
    }
    public void setAge(int a) {
        age = a;
    }
    public void compare(Boy boy) {
        if (this.age > boy.age) {
            System.out.println("YES");
        } else if (this.age < boy.age) {
            System.out.println("No");
        }
    }
}

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer