this
this是自身的一个对象,代表对象本身
三种用法
1、普通的直接引用
this相当于指向当前对象本身
2、形参与成员名重名,用于区分
class Person {
private int age = 10;
public Person(){
System.out.println("初始化年龄:"+age);
}
public int GetAge(int age){
this.age = age;
return this.age;
}
}
3、引用构造函数
super
super是代表当前类的超类的关键字
1、 普通直接引用
代表当前对象的父类,可以使用super.xxx来引用父类的成员
2、子类中的成员变量或方法与父类重名
class Country {
String name;
void value() {
name = "China";
}
}
class City extends Country {
String name;
void value() {
name = "Shanghai";
super.value(); //调用父类的方法,如果不调用,默认值为null
System.out.println(name);
System.out.println(super.name);
}
public static void main(String[] args) {
City c=new City();
c.value();
}
}
3、引用构造参数
super(参数):调用父类中的某个构造函数,必须在当前类的构造函数的第一行
this(参数):在一个构造函数中调用另一个构造函数,必须在当前类的构造函数的第一行