关键字this的用法,有的构造方法里不用this ,有的构造方法里用this ,可是我比较两个类,除了一个申明的数据是privat 型的,没什么别的区别,那么怎么判断什么时候要用什么时候不要用呢??

解决方案 »

  1.   

    哈哈,看来你也是新手,有this. 和.this的用法,在一个类的方法内部,引用了这个类的变量或方法时可以用this.指代类名,还有用this()指代构造方法。
    而.this一般用于内部类,意思是指代这个内部类。
    例如:class A{
     int a;
     int b; A(int c){a=10;b=c;}
    void B(int a;int c){
     this.a=a;    //这个this必须用,应该明白吧
     b=c;         //b前面的this可用可不用
     this(c);     //调用构造器
     } class B{
      A aA( ){
      return A.this; //.this的用法,这个估计麻烦些,慢慢理解吧。
      }
     }
    }
      

  2.   

    当构造函数的传入参数与构造函数本身定义的变量同名时,引用构造函数自身的变量要加this
      

  3.   

    是沙发吗,第一次做
    关键字this表示引用这个类的对象,用也可以,不用也行。
      

  4.   


    比如private String str = new String();
    可以用this来调用
    this.str;
      

  5.   

    当一个局部变量的名字和内的成员变量名字相同 而你想要在这个区域使用类的成员变量时可以用this来声明
      

  6.   

    this表示当前对象的引用,而this()调用当前对象的构造方法
      

  7.   

    可以这么说,只要是一个类里的成员,在这个类里,都可以用this.来开头。但是静态方法里不能出现this这个词
      

  8.   

    this 
    两种用法,一是调用自身实例的方法或者成员。EG:
     this.getName();
     this.property;第二种用法就有点类似于方法的调用
    比如下面这个类:
    public class xx {
    public xx() {
                    this(11);
    System.out.println("dd");

    }

    public xx(int a) {

    }
    }在那个无参数的构造方法里,用了:
    this(11);这里的this() ,是调用另一个构造方法,并将11做为参数传进去。
    注意,只有在构造方法里才能用
    this(),
    而且用的时候,这个this() 一定要是这个构造方法里面的第一句代码,
    比如将this(11);
    System.out.println("dd");改成System.out.println("dd");
    this(11);则会有错误
      

  9.   

    简单的说就是this能返回调用的成员变量,否则只能赋值与本地的局部变量
      

  10.   

    this.*这种形式中的this代表当前对象,
    这个时候的this最主要的作用就是帮助读程序的人来理解程序,
    this()这样代表调用自己的构造器.
      

  11.   

    this有2个意思:
    在构造方法中表示调用 本类的其他构造方法另一个就是调用被隐藏的对象 属性 等
      

  12.   

    成员方法内出现的this.表示的就是调用了该成员方法的那个对象.
    既然它是个对象,所以static方法里面就不能有this.了。因为static方法不依赖对象而存在.
      

  13.   

    构造方法里的this代表用这个构造方法创建的对象,不过一般不用写吧,明摆着啊
      

  14.   

    当构造函数的传入参数与构造函数本身定义的变量同名时,引用构造函数自身的变量要加this ?这只是this的一种用法。为什么静态不能出现this?
      

  15.   

    this关键字不可以用在静态方法中
      

  16.   

    我记得this和super都只能在构造方法中第一行使用吧,而构造方法的声明不可以用static所以不能在static中用吧,个人的理解..但我有个问题 this()也用在第一行,并且调用自己的构造方法,我编译没通过啊,说是====="递归构造函数调用" 有错误,不太理解,是不是this()相当与没什么意思?
      

  17.   

     this()相当于没有实际意义?
      

  18.   

    this 一般表示当前类对象的引用,在构造函数中有几种用法:
    1) 最常用的就是调用当前类的非static 属性和方法,this.length之类的this.getLength()等
       这里的this.一般可以省略,即直接用length,getLength()就可以了
       但是,当你的方法中有局部的属性与类实例变量重名的话,就要用this,才能调用类的变量,因为局部变量会覆盖
       类的实例变量,
    2) 还有一种比较少用的方法,就是用this(argument1 ,argument2...)的方法调用本类的构造函数,这个调用只能
    写在本类的其他构造函数中,并且要写在第一行,这和super()的使用是一样的.
      

  19.   

    那個.this的使用,可否解釋一下
      

  20.   

    this 好像有四种用法。
      

  21.   

    this
    是对当前对象的引用。