Getter et Setter (Java)

Getter et setter

La méthode qui définit (définit) les valeurs dans les champs des objets Java est ** setter **. La valeur pour obtenir la valeur est ** getter **.

De base

Par convention, les noms, arguments et valeurs de retour sont les suivants.

Nom de la méthode argument Valeur de retour
Getter getXXX() Aucun argument Valeur du champ
Setter setXXX() Un argument type de vide

Getter

Avant cela, d'abord sur l'encapsulation

Rendre le contenu des objets qui forment un programme aussi invisible que possible des autres objets. Le principe de l'encapsulation est de rendre tous les champs privés afin que les autres classes ne puissent pas accéder au champ.


nom de champ de nom de type privé();

Les champs rendus privés par encapsulation ne sont pas accessibles directement par d'autres classes. Fournissez un moyen d'accès indirect au cas où vous auriez besoin d'y accéder. Plus précisément, préparez les méthodes suivantes pour l'accès indirect.


Type de retour Nom de la méthode(){
nom du champ de retour;
}

Cette méthode est juste une méthode qui renvoie la valeur du champ avec return. Par conséquent, le type de retour est le même que le type de champ. Par exemple

private int piyo;

Contre


public int getPiyo(){
	return piyo;
}

Sera.

Rendu privé en appelant la méthode "getPiyo ()" dans une autre classe Vous pourrez obtenir la valeur du champ de type int "piyo". En bref, en appelant le getter depuis une autre classe, vous obtenez la valeur du champ privé comme valeur de retour. Ceci est un getter. De cette façon, même s'il y a un changement dans le nom du champ ou la logique d'acquisition de la valeur, la méthode "getPiyo ()" Tout ce que vous avez à faire est de réécrire l'intérieur. Il y a aussi l'avantage que vous n'avez pas à réécrire d'autres classes qui utilisent la méthode "getPiyo ()".

Setter

Il s'avère que les getters peuvent obtenir des valeurs pour les champs privés. Cependant, comme le getter est une méthode qui renvoie simplement la valeur du champ avec return, la valeur du champ ne peut pas être réécrite. La méthode de réécriture de la valeur est le setter. En général, préparez la méthode suivante.


Type de retour Nom de la méthode(argument){
Nom de domaine=argument;
}

Cette méthode prend la valeur que vous souhaitez entrer dans le champ en tant qu'argument et l'affecte simplement au champ de la méthode, de sorte que le type d'argument est le même que le champ. Par exemple


private int hoge;

Contre


public void setPiyo(int piyo){
	piyo = hoge;
}

Sera. Ceci affecte simplement la valeur "hoge" reçue comme argument au champ "piyo". Comme le getter, de cette façon, même si quelque chose change, la méthode "setPiyo ()" dans la classe Tout ce que vous avez à faire est de réécrire l'intérieur. Il a aussi l'avantage qu'il n'est pas nécessaire de réécrire les autres classes qui utilisent la méthode "serPiyo ()".

Méthode d'accesseur

Une méthode préparée pour accéder indirectement à un champ masqué par pravate, comme un setter ou un getter, est appelée une ** méthode accesseur **. En accédant au champ à l'aide de la méthode accesseur, il est possible de réduire la dépendance entre les classes, de faciliter le travail d'ajout / modification et d'augmenter le degré de liberté.

Recommended Posts

Getter et Setter (Java)
Encapsulation Java et getters et setters
À propos des setters et des getters Java. <Différence par rapport à l'orientation de l'objet>
Java et JavaScript
XXE et Java
[Java] Thread et exécutable
Java vrai et faux
[Java] Comparaison des chaînes de caractères et && et ||
Java - Sérialisation et désérialisation
[Java] Arguments et paramètres
timedatectl et Java TimeZone
[Java] Branchement et répétition
[Java] Types de variables et types
java (classe et instance)
[Java] Surcharge et remplacement
Etudier Java # 2 (\ marque et opérateur)
Java version 8 et fonctionnalités ultérieures
[Java] Différence entre == et égal
[Java] Zone de pile et zone statique
[Java] Classe générique et méthode générique
Programmation Java (variables et données)
Cryptage et décryptage Java PDF
Java et Iterator Part 1 External Iterator Edition
Instructions Java if et switch
Définition et instanciation de classe Java
Apache Hadoop et Java 9 (partie 1)
[Java] À propos de String et StringBuilder
[Java] HashCode et remplacement égal
☾ Instruction Java / Repeat et instruction de contrôle de répétition
Méthodes Java et surcharges de méthodes
java Generics T et? Différence
Avantages et inconvénients de Java
java (branchement conditionnel et répétition)
À propos du package Java et de l'importation
[Java] Téléchargez une image et convertissez-la en Base64
Histoire de remplacement C # et Java
Méthodes et classes abstraites Java
Instructions Java while et for
[Java] Une technique pour écrire des constructeurs, des getters et des setters d'un seul coup avec IntelliJ IDEA.
J'ai comparé les constructeurs PHP et Java
Différences entre Java "débutant" et Kotlin
Utiliser java avec MSYS et Cygwin
Traçage distribué avec OpenCensus et Java
[Java] Différence entre Hashmap et HashTable
Déclaration, initialisation et types de variables Java
Insertion Java Excel et extraction d'images
Installez Java et Tomcat avec Ansible
SDK AWS pour Java 1.11.x et 2.x
[Java] Types de base et notes d'instructions
Date de sortie de Java et résumé EOL
Java et fonctions principales - au-delà de l'interface fonctionnelle -
À propos de Biocontainers fastqc et Java
Java pour les débutants, les expressions et les opérateurs 1
Série Java Primer (variations et types)
Exemple d'encodage et de décodage en Java
[Java débutant] À propos de l'abstraction et de l'interface
Types de données de base et types de référence (Java)
[Java] Traitement en boucle et table de quatre-vingt-dix-neuf
Arguments Java, valeurs de retour et surcharges
Aide sur les commandes OpenJDK 8 java et javac