Java のゲッターとセッターは、変数の値のフェッチと更新に使用される 2 つのメソッドです。ゲッター メソッドは変数の更新された値のフェッチに関係し、セッター メソッドは既存の変数の値を設定または更新するために使用されます。 Java のゲッター メソッドとセッター メソッドは、それぞれアクセサーとミューテーターとも呼ばれます。
以下は、Java で getter メソッドと setter メソッドを使用する構文です。
広告 このカテゴリーの人気コース JAVA マスタリー - スペシャライゼーション | 78 コース シリーズ | 15 回の模擬テスト無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
構文:
package <packagename>; public class <className>{ // class member variable private <datatype> <variableName>; // getter method to fetch data public <datatype> get<VariableName>(){ return <variableName>; } // setter method to update data public void set<VariableName>(<datatype> variableName){ this.<variableName>= variableName; } }
上記の構文では、次の記号が使用されています。
Java でゲッターとセッターを使用する主な目的は、データの隠蔽を提供することです。クラスの変数はプライベートとしてマークされ、その変数の値を取得して更新するためにゲッターとセッターが公開されます。ゲッターとセッターを使用すると、開発者は変数にアクセスし、適切な状態で更新する方法を制御できます。したがって、ゲッターとセッターは変数へのアクセス セキュリティを提供し、変数の値が外部から変更されないように保護します。わかりやすくするために例を考えてみましょう:
例:
public class Test { //String variable marked as private private String name; // getter method public String getName() { return name; } // setter method public void setName(String name) { this.name = name; } }
上記の例では、変数名はプライベートおよびゲッターとしてマークされています。セッターが公開されます。変数をプライベートとしてマークすると、データが隠蔽されます。外部から変数名を変更することはできません。
ゲッター メソッドとセッター メソッドの命名には、以下の命名規則に従います。
以下の表は、指定された変数名のゲッター メソッドとセッター メソッドを示しています。
Variable Name | Getter Method | Setter Method |
private int data | public int getData() { return data; } |
public void setData(int data) { this.data = data; } |
private ArrayList elements; | public ArrayList getElements() { return elements; } |
public void setElements(ArrayList elements) { this.elements = elements; } |
private String name; | public String getName() { return name; } |
public void setName(String name) { this.name = name; } |
private Date date; | public Date getDate() { return date; } |
public void setDate(Date date) { this.date = date; } |
private boolean flag; | // in case of boolean get is replaced with ‘is’ public boolean isFlag() { return flag; } |
public void setFlag(boolean flag) { this.flag = flag; } |
package com.edubca.gettersetterdemo; import java.util.ArrayList; import java.util.Date; import java.util.function.Consumer; public class Test { private int number; public ArrayList languages; private String name; private Date date; private boolean flag; public int getNumber() { return number; } public void setNumber(int data) { this.number = data; } public ArrayList getLanguages() { return languages; } public void setLanguages(ArrayList elements) { this.languages = elements; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getDate() { return date; } public void setDate(Date date) { this.date = date; } public boolean isFlag() { return flag; } public void setFlag(boolean flag) { this.flag = flag; } public static void main(String[] args) { Test test =new Test(); // Creating an instance of class test.setNumber(10); // setting value of Integer Data int output= test.getNumber(); // reading value of Integer Data System.out.println("Value of Integer Data is :" + output); System.out.println(); test.setName("Edubca"); //setting value of String variable String stringOutput= test.getName(); // reading value of String variable System.out.println("Value of String Data is :" + stringOutput); System.out.println(); ArrayList list =new ArrayList(); list.add("Java"); list.add("Hadoop"); list.add("Spark"); list.add("Hive"); list.add("Python"); list.add("C++"); list.add("Machine Learning"); test.setLanguages(list); // set list of languages ArrayList languages=test.getLanguages(); // get list of languages System.out.println("List of languages is : "); languages.forEach(new Consumer<String>() { @Override public void accept(String t) { // TODO Auto-generated method stub System.out.println(t); } }); System.out.println(); Date date =new Date(); test.setDate(date); // setting value of date variable Date outdate=test.getDate(); // reading value of date variable System.out.println("Current Date is : " + outdate); System.out.println(); test.setFlag(true); // set boolean variable boolean outflag=test.isFlag(); // reading boolean variable System.out.println("Flag is :" + outdate); } }
プライベート文字列名;
プライベートブールフラグ;
以上がJavaゲッターセッターの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。