46

可能重复:
参数和参数之间有什么区别?

我正在处理一些面试问题。对于这个问题,我无法给出一个可靠的答案:

Java中参数和参数之间的区别?
它们有何不同?

4

5 回答 5

63

通常,参数是出现在方法定义中的参数。参数是在运行时传递给方法的实例。

您可以在此处查看说明:http ://en.wikipedia.org/wiki/Parameter_(computer_programming)#Parameters_and_arguments

于 2012-10-03T13:00:49.140 回答
20

术语参数是指方法/函数声明或定义中方法/函数名称后面的括号内的任何声明;术语参数是指方法/函数调用的括号内的任何表达式。IE

  1. 函数/方法定义中使用的参数。
  2. 函数/方法调用中使用的参数。

请查看以下示例以更好地理解:

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);
    }

}

谢谢!

于 2012-10-03T13:31:29.300 回答
7

他们不是。它们完全一样。

但是,也有人说参数是方法签名中的占位符:

public void doMethod(String s, int i) {
  ..
}

String s 和 int i 有时被称为参数。参数是实际值/引用:

myClassReference.doMethod("someString", 25);

"someString" 和 25 有时被称为参数。

于 2012-10-03T12:59:47.600 回答
7

有不同的观点。一是它们是相同的。但在实践中,我们需要区分形式参数(方法头中的声明)和实际参数(在调用点传递的值)。虽然短语“形式参数”和“实际参数”很常见,但不使用“形式参数”和“实际参数”。这是因为“参数”主要用于表示“实际参数”。因此,有人坚持“参数”只能表示“形式参数”。

于 2012-10-03T13:17:55.533 回答
2

在java中,参数有两种类型,隐式参数和显式参数。显式参数是传递给方法的参数。方法的隐式参数是调用该方法的实例。参数只是两种类型的参数之一。

于 2012-10-03T13:02:52.923 回答