目录
使用this调用本类中的属性
在一个类的方法或者构造方法内部,当成员变量被局部变量隐藏时,想使用成员变量的话,可以使用“this.成员变量名”来引用成员变量。
class Person {
private String name;
private int age;
public Person( ) { }
public Person(String name, int age){
this.name=name;
this.age=age;
}
}
使用this调用构造方法
在程序设计中,常常以不同的方式来实例化对象,这就需要构造方法重载来形成多个构造方法。构造方法的重载的目的是以不同的方式实例化对象。构造方法重载时,可以在构造方法中使用this( )调用其他构造方法。
使用this调用本类中的其他构造方法,重用类的另一个构造方法的代码,而不是定义类似的代码在没有参数的构造方法体内,是一种流行的方式。
使用this调用构造方法
package test;
public class Person {
String name;
int age;
//无参构造方法
public Person(){
this.age = 18;//默认构造年龄赋值18岁
}
//有参构造方法,传入姓名name和年龄age
public Person(String name, int age){
this();//使用this()调用构造方法Person()
this.name = name;
}
public void say(){
System.out.println("姓名:"+name+",年龄:"+age);
}
}
this表示当前的对象
package test;
public class Person {
String name;
int age;
public Person(String name, int age){
this.name = name;
this.age = age;
this.say();//使用this表示当前对象
}
public void say(){
System.out.println("姓名:"+name+",年龄:"+age);
}
}
总结说明:
每个对象可以通过this关键字访问自己的引用。
当一个实例方法被某个特定对象调用时,在该方法体内会隐式地使用关键字this来引用对象的实例变量和其他方法,使类的代码可以知道应该对哪个对象进行操作。
也可以在实例方法体内显式地使用关键字this。