关于this关键字

this存在于堆内存的对象当中,保存内存地址指向对象自身。
(1)在static修饰的方法中不能使用this关键字,因为this关键字代表的是执行当前动作的对象,而static方法采用"类名."调用,与对象无关。
(2)this大多数时候可以省略,但是在区分实例变量和局部变量的时候不能省。
int age;
public void setAge(int age){
  this.age = age;
}

(3)this的另一个用法,通过一个构造方法调用另一个构造方法。代码复用。
格式:this(实参列表); 注意:对于this的调用必须是构造器的第一个语句。
public class Test {
  public static void main(String[] args){
    User u = new User();
  }
}


class User{
  private int id;
  private String name;

  public User(){
    this(1,"张三");
    show();
  }
  public User(int id,String name){
    this.id = id;
    this.name = name;
  }
  public void show(){
    System.out.println("编号:" + id + "姓名:" + name);
  }
}

posted @ 2015-10-26 23:29  GoQC  阅读(113)  评论(0)    收藏  举报