A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 剪爱 中级黑马   /  2014-5-12 21:00  /  1578 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

this关键字的使用范围:'({:2_30:}

4 个回复

倒序浏览
this关键字准备来说可以用在任何地方,它永远指向你所用this关键字代码所在的类,指向本类对象.
回复 使用道具 举报 1 0
this关键字的使用范围

首先,this是什么?
答:this是所在函数所属对象的引用。简单而言,this代表对象。哪个对象?该类的对象。

this的范围:1.当成员变量与局部变量相同时,可以使用this关键字调用成员变量。
  1. class Demo
  2. {
  3.         //成员变量x
  4.         int x;
  5.        
  6.         //局部变量x
  7.         Demo(int x)
  8.         {
  9.                 //因为成员变量与局部变量x名字相同 所以下面这句话 不会改变成员变量的值
  10.                 x = x;
  11.                
  12.                 //this.x代表成员变量x 这句话可以将局部变量x的值赋给成员变量x
  13.                 this.x = x;
  14.         }
  15. }
复制代码

2.构造函数与构造函数的调用,可以使用this

  1. class Demo
  2. {
  3.         Demo(String name){}
  4.        
  5.         Demo(String name, int age)
  6.         {
  7.                 //这里如果调用Demo()函数时,用this(args)调用。且必须在第一句调用(初始化必须先开始)
  8.                 this(name);
  9.         }
  10. }
复制代码

3.实际上,当本类中用到本类的成员变量(成员与函数),前面都有this,一般省略不写。
  1. class Demo()
  2. {
  3.         //定义成员变量x
  4.         int x;
  5.        
  6.         Demo(int y)
  7.         {
  8.                 //下面两句话是一样的,第二句省略this变为第一句。
  9.                 x = y;
  10.                 this.x = y;
  11.         }
  12. }
复制代码

还有任何疑问,回帖我继续给你解释。:)
回复 使用道具 举报
楼上的说的很对!
回复 使用道具 举报
this关键字主要用在类中,用于区分局部变量和成员变量同名的情况。
class   Person
{
   private String name;
   Person(String name)
   {
      this.name=name;//这种情况就要用this关键字
    }
}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马