- -チュートリアル:JAVAのメソッドからオブジェクトを返す方法

チュートリアル:JAVAのメソッドからオブジェクトを返す方法

この開発者ガイドでは、 JAVAのメソッドからオブジェクトを返す Javaオブジェクトメソッドの使用。最初に、 メソッドの戻り型。次に、呼び出しの制御フローを確認しますコードを呼び出すコードと、制御が呼び出しコードに戻ったときのコード。 Javaでのメソッドのオーバーロードとコンストラクターのオーバーロードについて学習した後、 Javaオブジェクトのメソッド 簡単になります。

JAVAのメソッドからオブジェクトを返す方法

メソッドは、次の場合にそれを呼び出したコードに戻ります。

  1. メソッド内のすべてのステートメントを完了します
  2. returnステートメントに到達する
  3. または例外をスローします(後で説明します)

最後の2つの間で最初に発生する方。メソッドの宣言では、メソッドの戻り値の型を必ず宣言してください。メソッドの本体内の値を返すには、returnステートメントを使用できます。

voidで宣言されたメソッドは値を返しません。 一方、returnステートメントを含める必要はありませんが、入れたい場合は含めることができます。このような場合、returnステートメントを使用して制御フローブロックから分岐し、メソッドを終了することができ、次のように使用します。

return;

もし、あんたが 値を返そうとする voidと宣言されているメソッドからは、コンパイラエラーが発生します。

voidとして宣言されていないメソッドには、次のように、対応する戻り値を持つreturnステートメントが含まれている必要があります。

return returnValue;

これまでのところ、私たちが以前に知っていた要約です。

Javaのメソッド呼び出し後にオブジェクトを返す方法

次に、メソッド呼び出しの後にオブジェクトを返す方法を学びます。奇妙なようです。しかし、それは本当です メソッドは任意のタイプのデータを返すことができます、作成したクラスタイプを含みます。以下の例でそれがどのように起こるかを理解します。

プログラム

class Employee{
double salary;
Employee(double salary){
this.salary = salary;
}
Employee updateSalary(double salary){
Employee employee = new Employee(this.salary+salary);
return employee;
}
double getSalary(){
return this.salary;
}
}
class ReturnObjectDemo{
public static void main(String args[]){
Employee kallis = new Employee(34029.48);
Employee ronaldo;
ronaldo=kallis.updateSalary(6295.28);
System.out.println("Salary of Kallis is: "+kallis.getSalary());
System.out.println("Salary of Ronaldo is: "+ronaldo.getSalary());
}
}

出力

オブジェクトメソッドJAVAを返す

Javaコードと出力の説明

ご覧のとおり、updateSalary()が呼び出されるたびに、新しいオブジェクトが作成され、そのオブジェクトへの参照が呼び出し元のルーチンに返されます。

上記のプログラムは、別の重要なポイント:すべてのオブジェクトはnewを使用して動的に割り当てられるため、オブジェクトが作成されたメソッドが終了するため、オブジェクトがスコープ外になることを心配する必要はありません。

オブジェクトは、存在する限り存続しますあなたのプログラムのどこかにそれへの参照があります。参照がない場合、オブジェクトは次回ガベージコレクションが行われたときに再利用されます。

ここオブジェクト ロナルド オブジェクトによってupdateSalary()が呼び出されると、クラスタイプEmployeeのオブジェクトが作成されます カリス 従業員クラスの。しかし、注意すべき点は、 ロナルド オブジェクトから作成されます カリス しかし、どちらもインスタンス変数の個別のコピーを持ちます。

Javaプログラミングに関するより有用なチュートリアルと決定的なガイドラインをここで確認してください。

コメント