我的Java——this 的使用

在方法中,可以使用一个关键词this来表示这个对象本身。在普通方法中,this 表示调用这个方法的对象;在构造方法中,this表示新创建的对象

1.使用this来访问对象的字段和方法

例如:方法sayHello中使用name和使用this.name是相同的;

void sayHello(){

  System.out.println("Hello!My name is"+name);

}

void sayHello(){

  System.out.println("Hello!My name is"+this.name);

}

的含义是相同的。

2.使用this解决局部变量与字段同名的问题

使用this 还可以解决局部变量(方法中的变量)或参数变量与字段变量同名的问题。如,在构造方法中,经常这么用:

Person(int age,String neme){

this.age=age;

this.name=name;

}

这里,this.age表示字段变量,而age表示的是参数变量。

3.构造方法中,用this调用另一种构造方法

如:

Person(){

  this(0,"");

}

如果,在构造方法中调用另一构造方法 则这条调用语句必须放在第一句。(关于构造方法的更复杂的问题)

4.使用this的注意事项

在使用this时,要注意this指的是调用“对象”本身,不是本“类定义”中看见的变量或方法。

注意:

(1)通过this不仅可以引用该类中定义的域和方法 还可以引用该类的父类中定义的域和方法

(2)由于它指的是对象 所以this不能通过this来引用类变量(static field),类方法(static method)

事实上,在所有的非static方法中,都隐含一个参数this。而static方法中,不能使用 this。

posted @ 2016-05-27 10:38  努力成为工程师的芝麻  阅读(199)  评论(0编辑  收藏  举报