Java中参数和参数之间的区别[重复]
Posted
技术标签:
【中文标题】Java中参数和参数之间的区别[重复]【英文标题】:Difference between arguments and parameters in Java [duplicate] 【发布时间】:2012-09-24 09:54:00 【问题描述】:可能重复:What's the difference between an argument and a parameter?
我正在处理一些面试问题。我无法为这个问题想出一个可靠的答案:
Java中实参和形参的区别? 它们有何不同?
【问题讨论】:
这似乎相关:What's the difference between an argument and a parameter? public static void main(String[]args) : args 是一个包含参数列表的参数 如果你结婚了,你只需要担心争论。否则,只需对两者都使用 term 参数。 重点是这个领域的术语不是很清楚,所以这是另一个愚蠢的面试问题。 来自 Oracle 的教程 (docs.oracle.com/javase/tutorial/java/javaOO/arguments.html):注意:参数是指方法声明中的变量列表。参数是调用方法时传入的实际值。调用方法时,使用的参数必须在类型和顺序上与声明的参数匹配。 【参考方案1】:他们不是。它们完全一样。
但是,也有人说参数是方法签名中的占位符:
public void doMethod(String s, int i)
..
String s 和 int i 有时被称为参数。参数是实际值/引用:
myClassReference.doMethod("someString", 25);
"someString" 和 25 有时被称为参数。
【讨论】:
哦,好吧,如果它们相同,为什么会有两个不同的术语?【参考方案2】:通常,参数是出现在方法定义中的内容。参数是在运行时传递给方法的实例。
您可以在此处查看说明:http://en.wikipedia.org/wiki/Parameter_(computer_programming)#Parameters_and_arguments
【讨论】:
原语也可以是参数。 ;) @PeterLawrey 这些术语在链接的 WP 页面中的使用方式,42 可以被认为是int
类型的实例。【参考方案3】:
在java中,参数有两种,隐式参数和显式参数。显式参数是传递给方法的参数。方法的隐式参数是调用该方法的实例。参数只是两种类型的参数之一。
【讨论】:
【参考方案4】:有不同的观点。一是它们是相同的。但在实践中,我们需要区分形式参数(方法头中的声明)和实际参数(在调用点传递的值)。虽然短语“形式参数”和“实际参数”很常见,但不使用“形式参数”和“实际参数”。这是因为“参数”主要用于表示“实际参数”。因此,有人坚持“参数”只能表示“形式参数”。
【讨论】:
【参考方案5】:术语参数是指方法/函数声明或定义中方法/函数名称后面的括号内的任何声明;术语参数是指方法/函数调用括号内的任何表达式。即
-
函数/方法定义中使用的参数。
函数/方法调用中使用的参数。
请查看以下示例以更好地理解:
package com.***.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);
谢谢!
【讨论】:
System.out.println(344);与int v=344; System.out.println(v);哪个是参数/参数?你能帮帮我吗?以上是关于Java中参数和参数之间的区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章