this关键字
this关键字在Java中经常使用,它主要有以下作用:
1,使用this调用本类中的属性。
2,使用this调用构造方法。
3,表示当前对象
1_使用this调用本类中的属性。
在一个类的方法或构造方法内部,当成员变量被局部变量隐藏时,想使用成员变量的话,可以使用“this.成员变量名”这样的格式来引用成员变量名
class Person
{
private String name;
private int age;
public Person() {
// TODO Auto-generated constructor stub
}
public Person(String n,int a)
{
this.name=n;
this.age=a;
}
}
2_使用this调用构造方法
Java中构造方法的名称必须与类名一致,实际中需要对构造方法进行重载来形成多个构造方法,在调用构造方法时可以用this。使用this关键字调用构造方法时,this()必须放在构造方法的首行。
class Person
{
private String name;
private int age;
private String sex;
public Person() {
// TODO Auto-generated constructor stub
this.age=18;
}
public Person(String n)
{
this();
this.name=n;
}
public Person(String n,String s)
{
this(n);
this.sex=s;
}
public void tell() {
System.out.println(name+" "+age+" "+sex);
}
}
3_表示当前对象
this返回调用当前方法的对象可以用于比较对象是否相等。由于this表示的是当前实例的引用,因此只能在实例方法中使用,而不能在静态方法中使用。
public static void main(String[] args) {
Person person=new Person();
System.out.println("Now is "+person);
person.thisTask();
person.returnThis().thisTask();
}
}
class Person
{
public String thisTask() {
System.out.println("thisTask:"+this);
return null;
}
public Person returnThis() {
System.out.println("returnThis:"+this);
return this;
}
super关键字
super关键字在Java中经常使用,它主要有以下作用:
1,在子类中调用父类的属性和方法
2,在子类中调用父类的构造方法。