Java中参数和参数之间的区别

时间:2012-10-03 12:58:27

标签: java parameters arguments

  

可能重复:
  What's the difference between an argument and a parameter?

我正在接受一些面试问题。我无法对这个问题提出可靠的答案:

Java中参数和参数的区别?
他们有什么不同?

5 个答案:

答案 0 :(得分:52)

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

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

答案 1 :(得分:15)

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

  1. 函数/方法定义中使用的参数。
  2. 在函数/方法调用中使用的参数。
  3. 请查看以下示例以便更好地理解:

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

    谢谢!

答案 2 :(得分:8)

有不同的观点。一个是他们是一样的。但实际上,我们需要区分形式参数(方法标题中的声明)和实际参数(在调用点传递的值)。虽然短语“形式参数”和“实际参数”是常见的,但不使用“形式参数”和“实际参数”。这是因为“参数”主要用于表示“实际参数”。结果,有些人坚持认为“参数”只能表示“形式参数”。

答案 3 :(得分:5)

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

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

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

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

myClassReference.doMethod("someString", 25);

“someString”和25有时被认为是争论。

答案 4 :(得分:2)

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