Java のメソッド

Javaでプログラミングを始めるとき、クラス、メソッド、例外、コンストラクタ、変数など、学ぶべき多くの新しい概念があり、圧倒される可能性があることを知っておく必要があります。ですから、ゆっくりと学ぶのが最善です。この記事では、次のことを行います。Javaでメソッドとメソッドを呼び出す方法を学びます.

Javaメソッドは、コードの最適化と削減を目的とした一連の操作を1つのブロックに包含するC言語の関数に相当します。このメソッドは他のメソッドから呼び出すことができ、呼び出されると、そのメソッド内のすべてのメソッドも呼び出されて実行されます。たとえば、System.out.println() の場合、システムはコンソールにメッセージを表示するためだけにいくつかの操作を実行します。

ここでは、戻り値の有無にかかわらず独自のメソッドを作成する方法、パラメーターの有無にかかわらずメソッドを呼び出す方法、メソッド内のコードの抽象化を最適化する方法を学習します。

メソッドの作成

次の例を考えて、method:

public static int methodname(int a, int b) {
// メソッド本体
int sum = a + b;
return sum;
}
- キーワード public は、メソッド自体が 予定 呼び出し元のクラスをインポートする限り、任意のブロック、異なるクラス、または異なるパッケージから呼び出されます。publicです。これらは protected および privateです。メソッドが protectedの場合、このクラスとそれを継承する下位クラスがメソッドを呼び出すことができます。メソッドが privateの場合、メソッドは 予定 教室内でのみ呼ばれます。

- 2 番目のキーワード static は、メソッドがクラスとクラスのインスタンス (オブジェクト) に属していることを意味します。static は、クラス名 "ExampleClass.ExampleMethod()」です。ただし、キーワード static は存在しないため、メソッドはオブジェクトを介してのみ呼び出すことができます。クラスに(オブジェクト作成用の)コンストラクタがある場合は、ExampleObject obj = new  ExampleObject(); で、"objです。ExampleMethod()です。".

- int は関数の戻り値の型であり、この場合、メソッドは処理の実行後に整数の結果を返す関数として宣言されます。結果を返すキーワードは return.

- int a, int b は、メソッド内で使用されるパラメータのリストで、たとえば、a と b を加算する演算を行い、その結果を sum 変数に入れて、ステートメント return sum;.

例:
2つの数値を比較して最大値にするコードです。この関数は nb1 と nb2 の 2 つのパラメータを取り、両方の最大値を返します:

public static int max(int a, int b) {
int max;
if(a>b)
max=a;
else
max=b;
return max;
}

void キーワード

単語 void は、メソッドを呼び出したときにメソッドが何も返さないことを示します。メソッドに何かを返すようにしたい場合は、void 返すオブジェクトのデータ型で指定します。次に、return と object.

この例では、int n をパラメーターとして指定し、1 から n です。このメソッドの型は voidで値を返さない.

public class main {
public static void main(String[] args) {
print(5);
}

public static void print(int n){
for(int i = 0; i < n; i++)
System.out.println(i);
}
}
Runtime:

0
1
2
3
4
System.out.println() は void.

メソッドの呼び出し方法

メソッドを使用するには、メソッドを呼び出す必要があるため、何も返しません。メソッドを呼び出す方法は 2 つあります。メソッド呼び出しの処理は簡単です。プログラムがメソッドを呼び出すと、コントロール is 呼び出されたメソッドに転送されます。メソッドが終了すると、コントロールは 2 つの条件で呼び出し元に返されます:

1- ステートメント return が実行されます (function).
2- 何も返さずに閉じ括弧に到達します (procedure).

この例に示すように、関数が返すものを使用できます:

public class main {
public static void main(String[] args) {
int a, b;
a = 5;
b = 10;
int result = sum(a, b);
System.out.println("a+b = "+result);
}

public static int sum(int a, int b){
return a+b;
}
}
Runtime:

a+b = 15

Passing Parameters by Value

渡される引数は、メソッドで宣言されているパラメーターの順序と完全に一致する必要があります。パラメーターは、値または参照で渡すことができます。

パラメーターを値で渡すことは、パラメーターを使用してメソッドを呼び出すことを意味します。次のプログラムは、値渡しの方法の例を示しています。メソッドを呼び出した後も引数の値は変わらない

public class main {
public static void main(String[] args) {
int a = 30;
int b = 45;

System.out.println("スワップ前 (main), a = " + a
+ " b = " + b);

//permute()
permute(a, b) メソッドを呼び出します。
System.out.println("スワップ後 (main), a = " + a
+ " b = " + b);
}

public static void permuter(int a, int b) {

System.out.println("順列 (メソッド) 前は、a = " + a
+ " b = " + b);
// a を b
と入れ替える int c = a;
a = b;
b = c;

System.out.println("スワップ (メソッド) 後、a = " + a
+ " b = " + b);
}
}
Runtime:

スワップ前 (main) で、a = 30 b = 45
スワップ前 (メソッド) で、a = 30 b = 45
スワップ後 (メソッド) で、a = 45 b = 30
スワップ後 (ハンド) a = 30 b = 45

java

クラスに同じ名前で異なるパラメータを持つ2つ以上のメソッドが含まれている場合、これはメソッドのオーバーロードと呼ばれます。メソッドの名前、型、パラメータの数などが同じ場合のオーバーライドとは異なります

2つの整数間の最大値を決定する先ほど見た例を考えてみましょう。double 型の最大数を決定したいとしましょう。オーバーロードの概念は、同じ名前で異なるパラメータを持つ 2 つ以上のメソッドを作成するのに役立ちます.

public class main {
public static void main(String[] args) {
int a, b;
a = 7;
b = 8;
System.out.println("max("+a+", "+ b+") = "+max(a, b));

double x,y;
x=1.5;
y=4.2;
System.out.println("max("+x+", "+ y+") = "+max(x, y));
}

public static int max(int a, int b) {
int max;
if(a>b)
max=a;
else
max=b;
return max;
}

public static double max(double a, double b) {
double max;
if(a>b)
max=a;
else
max=b;
return max;
}
}
Runtime:

max(7, 8) = 8
max(1.5, 4.2) = 4.2
メソッドのオーバーロードにより、プログラムは適応可能になります。ここでは、2 つのメソッドの名前は同じですが、パラメーターが異なります。整数型と倍精度浮動小数点型の最大数は result.