重複の可能性:
引数とパラメーターの違いは何ですか?
私はいくつかのインタビューの質問をしていました。この質問に対する確かな答えを思いつくことができませんでした:
Javaの引数とパラメータの違いは?
それらはどう違いますか?
重複の可能性:
引数とパラメーターの違いは何ですか?
私はいくつかのインタビューの質問をしていました。この質問に対する確かな答えを思いつくことができませんでした:
Javaの引数とパラメータの違いは?
それらはどう違いますか?
通常、パラメーターはメソッドの定義に表示されるものです。引数は、実行時にメソッドに渡されるインスタンスです。
ここで説明を見ることができます: http://en.wikipedia.org/wiki/Parameter_(computer_programming)#Parameters_and_arguments
パラメータという用語は、メソッド/関数の宣言または定義のメソッド/関数名に続く括弧内の宣言を指します。引数という用語は、メソッド/関数呼び出しの括弧内の任意の式を指します。すなわち
理解を深めるために、以下の例をご覧ください。
package com.stackoverflow.works;
public class ArithmeticOperations {
public static int add(int x, int y) { //x, y are parameters here
return x + y;
}
public static void main(String[] args) {
int x = 10;
int y = 20;
int sum = add(x, y); //x, y are arguments here
System.out.println("SUM IS: " +sum);
}
}
ありがとうございました!
ではない。それらはまったく同じです。
ただし、パラメーターはメソッド シグネチャのプレースホルダーであると言う人もいます。
public void doMethod(String s, int i) {
..
}
String s と int i は、パラメーターと呼ばれることがあります。引数は実際の値/参照です:
myClassReference.doMethod("someString", 25);
「someString」と 25 は、引数であると言われることがあります。
さまざまな視点があります。1つは、それらが同じであることです。しかし実際には、仮パラメーター (メソッドのヘッダーでの宣言) と実際のパラメーター (呼び出し時に渡される値) を区別する必要があります。「仮引数」と「実引数」という表現は一般的ですが、「仮引数」と「実引数」は使用されません。これは、「引数」が主に「実際のパラメータ」を示すために使用されるためです。その結果、「パラメータ」は「仮パラメータ」のみを表すことができると主張する人もいます。
Java には、暗黙的パラメーターと明示的パラメーターの 2 種類のパラメーターがあります。明示的なパラメーターは、メソッドに渡される引数です。メソッドの暗黙的なパラメーターは、メソッドが呼び出されるインスタンスです。引数は、2 種類のパラメーターのうちの 1 つにすぎません。