Javaの実引数と仮引数にはどのような違いがありますか?
Javaにおいて、実引数(actual argument)と仮引数(formal parameter)はメソッドのパラメータの2つの概念です。
メソッドの呼び出し時にメソッドに渡される引数の値を実引数と呼びます。実引数の値には定数、変数、式、またはメソッドの戻り値が含まれます。実引数の目的は、メソッドに必要なデータを提供することです。
メソッドの定義中におけるパラメータとしての引数は、メソッド宣言時に実引数の値を受け取るために使用される変数です。引数の目的は、メソッドが受け取るデータ型とパラメータの数を定義することです。
以下の違いは次の通りです:
- 引数とは、メソッドの呼び出し時にメソッドに渡される値であり、仮引数とはメソッド定義の中で定義されるパラメーターのことです。
- データ型が異なる:実引数は定数、変数、式、またはメソッドの戻り値である可能性があります。一方、仮引数はメソッドの定義で使用され、実引数の値を受け取るために使われます。
- 役割の違い:実引数の役割はメソッドに必要なデータを提供することであり、仮引数の役割はメソッドが受け取るデータの種類や数を定義することです。
例を挙げて説明する:
public void printSum(int a, int b) {
int sum = a + b;
System.out.println("Sum is: " + sum);
}
public static void main(String[] args) {
int x = 5;
int y = 10;
printSum(x, y);
}
この例では、int aとint bは仮引数であり、それらはメソッドが受け取るデータ型とパラメータの数を定義しています。xとyは実引数であり、メソッドを呼び出す際にメソッドに渡される引数の値です。