Maison >interface Web >js tutoriel >Que sont les getters et les setters et pourquoi devriez-vous les utiliser ?

Que sont les getters et les setters et pourquoi devriez-vous les utiliser ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-24 00:50:09403parcourir

What Are Getters and Setters, and Why Should You Use Them?

Getters et Setters : une explication complète et un guide d'utilisation

Les Getters et les setters sont des mécanismes essentiels dans la programmation orientée objet qui permettent un accès contrôlé à les propriétés privées d'un objet. Ils jouent un rôle crucial dans l'encapsulation et l'intégrité des données, garantissant que l'état d'un objet ne peut être manipulé que par des méthodes bien définies. Voici une explication simplifiée et quelques exemples simples pour vous aider à comprendre leur concept et leur utilisation :

  1. Ce que font les getters et les setters :

    • Getters : Ces méthodes récupèrent la valeur d'une propriété privée sans la modifier. Elles fournissent une interface en lecture seule, permettant au code externe d'inspecter mais pas de modifier la valeur de la propriété.
    • Setters : Ces méthodes mettent à jour la valeur d'une propriété privée. Ils garantissent que la propriété est affectée à un type spécifique ou subit une validation spéciale avant que sa valeur ne soit modifiée.
  2. Exemples simples :

    • Exemple Getter :

      class Person {
        constructor(name) {
          // Declares a private property
          this._name = name;
        }
      
        // Defines a getter for the _name property
        get name() {
          return this._name;
        }
      }

      Dans cet exemple, get name est une méthode getter qui permet d'accéder à la propriété privée _name.

    • Exemple de setter :

      class Employee {
        constructor(salary) {
          // Declares a private property
          this._salary = salary;
        }
      
        // Defines a setter for the _salary property
        set salary(newSalary) {
          if (newSalary > 0) {
            this._salary = newSalary;
          } else {
            throw new Error("Invalid salary");
          }
        }
      }

      Ici, définir le salaire est une méthode setter qui valide l'entrée et met à jour la propriété _salary uniquement si elle est une valeur positive. Si un salaire invalide est fourni, une erreur est générée.

De plus, les setters peuvent effectuer des opérations complexes ou mettre à jour plusieurs propriétés associées. Ils offrent un moyen flexible de contrôler et d’appliquer des mises à jour cohérentes des données. En utilisant les getters et les setters de manière appropriée, vous pouvez maintenir l'intégrité des données, éviter les effets secondaires involontaires et améliorer la maintenabilité et l'extensibilité de votre base de code.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn