求java大神解答this关键字的具体使用

老师说this有三种使用方法,可是到现在也不清楚,有时候学完会了,又忘了。求详解,最好带上例子... 老师说this有三种使用方法,可是到现在也不清楚,有时候学完会了,又忘了。
求详解,最好带上例子
展开
 我来答
唯夜TGBUS
2014-03-15 · TA获得超过568个赞
知道小有建树答主
回答量:124
采纳率:0%
帮助的人:139万
展开全部

this是该类的实例指针,就是指向该类实例的一个指针。

用法如下:

  1. 类内部的成员变量和方法可以有this指针引用。例如: this.getData();//getData为该类内的一个方法。

  2. 类的构造方法可以由this代替。例如

class Test{
    
    public Test(){
        this( "hello world" );//这里的this可以代表构造函数
    }
    
    public Test( String tag ){
        System.out.println( tag );
    }
}

3. this指针可以代表该类的类型。代码如下:

class Context{}

class View{
    
    public View( Context context ){}
}

class Application extends Context{
    
    public void createApplication(){
        View view = new View( Application.this );
    }
}

如上:希望能够帮到你!

匿名用户
2014-03-15
展开全部
1、表示对当前对象的引用!
2、表示用类的成员变量,而非函数参数,注意在函数参数和成员变量同名是进行区分!其实这是第一种用法的特例,比较常用,所以那出来强调一下。
3、用于在构造方法中引用满足指定参数类型的构造器(其实也就是构造方法)。但是这里必须非常注意:只能引用一个构造方法且必须位于开始!
还有就是注意:this不能用在static方法中!所以甚至有人给static方法的定义就是:没有this的方法!虽然夸张,但是却充分说明this不能在static方法中使用!

说明在什么情况下需要用到this:
第一、通过this调用另一个构造方法,用发是this(参数列表),这个仅仅在类的构造方法中,别的地方不能这么用。
第二、函数参数或者函数中的局部变量和成员变量同名的情况下,成员变量被屏蔽,此时要访问成员变量则需要用“this.成员变量名”的方式来引用成员变量。当然,在没有同名的情况下,可以直接用成员变量的名字,而不用this,用了也不为错,呵呵。
第三、在函数中,需要引用该函所属类的当前对象时候,直接用this。
其实这些用法总结都是从对“this是指向对象本身的一个指针”这句话的更深入的理解而来的,死记不然容易忘记而且容易搞错,要理解!

5044群号5871,一起学习讨论啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式