代码如下:
class X
{
public void Y(){}
}
X _x=new X();
_x.Y(); //should I say Y is method of _x variable? It is easy but actually the variable contains just reference to object that has this method
X newX=x; //here I assign the value of variable x to variable newX. The value is reference 发布于 2011-01-19 22:45:34
以我最书生气的心情,我会写道:
Y是在类型X中声明的无参数实例方法。它在_x的值所引用的对象上调用。
(_x本身既不是对象,也不是引用-它是变量。)
发布于 2011-01-19 22:42:28
Y是类X上的pubilc实例方法,该类被_x引用的类X的实例调用。
顺便说一句,像这样的调用实际上被编译成类似于
call X::Y(_x)这是因为每个实例级方法都有一个隐式的第一个参数,该参数是对正在调用该方法的对象的引用(这就是this引用正确对象的方式)。
发布于 2011-01-19 22:47:45
通常这不是什么大问题,因为类和变量都有描述性的名称,所以什么是什么就很清楚了。
一个使用实际类的示例:
builder是一个变量,其中包含对StringBuilder类实例的引用:
StringBuilder builder = new StringBuilder();Append方法是StringBuilder类中的方法,而不是builder变量中的方法。您正在builder引用的实例上调用该方法:
builder.Append("asdf");https://stackoverflow.com/questions/4736510
复制相似问题