首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >引用变量的type..terminology问题

引用变量的type..terminology问题
EN

Stack Overflow用户
提问于 2011-01-19 22:41:20
回答 3查看 48关注 0票数 1

代码如下:

代码语言:javascript
复制
 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 
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-01-19 22:45:34

以我最书生气的心情,我会写道:

Y是在类型X中声明的无参数实例方法。它在_x的值所引用的对象上调用。

(_x本身既不是对象,也不是引用-它是变量。)

票数 1
EN

Stack Overflow用户

发布于 2011-01-19 22:42:28

Y是类X上的pubilc实例方法,该类被_x引用的类X的实例调用。

顺便说一句,像这样的调用实际上被编译成类似于

代码语言:javascript
复制
call X::Y(_x)

这是因为每个实例级方法都有一个隐式的第一个参数,该参数是对正在调用该方法的对象的引用(这就是this引用正确对象的方式)。

票数 1
EN

Stack Overflow用户

发布于 2011-01-19 22:47:45

通常这不是什么大问题,因为类和变量都有描述性的名称,所以什么是什么就很清楚了。

一个使用实际类的示例:

builder是一个变量,其中包含对StringBuilder类实例的引用:

代码语言:javascript
复制
StringBuilder builder = new StringBuilder();

Append方法是StringBuilder类中的方法,而不是builder变量中的方法。您正在builder引用的实例上调用该方法:

代码语言:javascript
复制
builder.Append("asdf");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4736510

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档