L’une des façons que nous puissions édicter une encapsulation de données consiste à utiliser des accesseurs et des mutateurs. Le rôle des descripteurs et de mutateurs d’accès est de revenir et de définir les valeurs de l’état d’un objet. Nous apprenons à planifier des descripteurs d’accès et des mutateurs en Java. Par exemple, nous utiliserons une classe de personne avec l’état et le constructeur déjà défini:
Méthodes d’accès
Une méthode d’accès est utilisée pour renvoyer la valeur d’un champ privé. Suivez un schéma de nomenclature qui empêche le mot «obtenir» au début du nom de la méthode. Par exemple, ajoutez des méthodes d’accès pour prénom, Middlenames et lastname:
Ces méthodes sont toujours renvoyées le même type de données que votre champ privé correspondant (par exemple, une chaîne), puis renvoyez simplement la valeur de ce champ. Privé.
Nous pouvons maintenant accéder à ses valeurs via les méthodes d’un objet de personne:
Méthodes mutant
Une méthode de mutateur est utilisée pour définir une valeur d’un domaine privé. Suivez un schéma de nomenclature qui empêche le mot «défini» au début du nom de la méthode. Par exemple, ajoutons des champs mutants pour l’adresse et le nom d’utilisateur:
Ces méthodes n’ont pas de taux de rendement et acceptent un paramètre le même type de données que son champ privé correspondant. Ensuite, le paramètre est utilisé pour définir la valeur de ce champ privé.
Il est maintenant possible de modifier les valeurs d’adresse et le nom d’utilisateur dans l’objet personne:
par quoi utiliser des accessoires et des mutateurs?
Il est facile d’arriver à la conclusion que nous pourrions simplement modifier les champs privés de la définition de classe afin qu’ils soient publics et obtiennent les mêmes résultats. Il est important de se rappeler que nous voulons cacher les données d’objet autant que possible. Le tampon supplémentaire fourni par ces méthodes nous permet de:
- modifie la manière dont les données du cadre sont manipulées.
- impose la validation aux valeurs sur lesquelles les champs .
Disons que nous avons décidé de modifier la manière dont nous stockons les deuxième noms. Au lieu d’une seule chaîne, nous pouvons maintenant utiliser une matrice de chaîne:
La mise en œuvre de l’objet a changé, mais le monde extérieur n’est pas affecté. La façon dont ils s’appellent les méthodes reste exactement la même:
ou, disons que l’application utilisant l’objet personne ne peut accepter que les noms d’utilisateur comportant un maximum de dix caractères. Nous pouvons ajouter une validation sur le mutateur SETUserName pour vous assurer que le nom d’utilisateur est conforme à cette exigence:
MAINTENANT, si le nom d’utilisateur transmis au Mutar SetUserName a plus de dix caractères, il est automatiquement tronqué.