属性与参数和参数之间的区别[重复]
Posted
技术标签:
【中文标题】属性与参数和参数之间的区别[重复]【英文标题】:difference between attribute and parameter and argument [duplicate] 【发布时间】:2015-07-18 01:38:31 【问题描述】:attribute与parameter和argument有什么区别?这是如何工作的? 例如:-
int a = 10;//attribute
method(int a);//argument or parameter
如果我动态传递一个参数,那么它将被称为参数还是参数。 谢谢。
【问题讨论】:
您的代码的第二行甚至无法编译。第一行不清楚您是在声明实例字段还是局部变量——这两者都是比“属性”更标准的 Java 术语。 属性是你放在最上面的,参数是你从调用者角度传递的,参数是从被调用者角度传递的。那个,java把它叫做注解而不是属性。 "Attributes" = 在类中的方法之外声明的那些“变量”,也就是“字段”; “参数”=方法期望的输入值的类型+名称; "arguments" = 赋予方法的值 -> 调用方法时的参数。 parameter 和argument 可以互换使用。而attribute 可以称为包含实体的一条信息。 @AlokMishra:你可以互换使用参数和参数,但它们是完全不同的术语,我认为值得尝试使用它们正确。 【参考方案1】:class SomeClass
private int someAttribute; // <-- Attribute (declaration)
public void setSomeAttribute( int attrValue /* <-- Parameter (declaration) */ )
int twice = attrValue * 2; // (local) variable
this.someAttribute = twice;
public void doSomethingElse()
int x; // (local) variable
x = 1;
setSomeAttribute(x); // the value of x is the argument
setSomeAttribute(999); // 999 is the argument
【讨论】:
someAttribute
是我所说的 field 或 member。我相信这也是它在 JLS 和其他可靠文件中的使用方式。您是否有任何来源称它们为广泛使用的“属性”?
en.wikipedia.org/wiki/…
你不能从这样一个通用文档中假设特定的术语。它将“属性”和“属性”指定为字段的同义词。例如,在 C# 中,这些是 3 个非常不同的类成员。
en.wikipedia.org/wiki/Class_diagram#Members【参考方案2】:
参数是出现在方法定义中的内容。 Argument 是在运行时传递给方法的实例或原语。
【讨论】:
以上是关于属性与参数和参数之间的区别[重复]的主要内容,如果未能解决你的问题,请参考以下文章