Java面向对象--super关键字
关键字
笔记要点
super: 表示父类中的内容
this: 表示自己类中的内容
用super和this区分自己类和父类中的内容
创建对象的过程:先创建父类的对象,然后创建子类的对象
小总结:
1. super可以获取到父类中的内容
2. 可以调用父类中的构造方法,必须写在子类构造方法的第一行
如果父类的构造方法是无参数的,可以不写。
如果父类的构造方法是有参数的,就必须要写super(参数)
实践代码
Hero类
public class Hero {
String name;
public Hero() {
System.out.println("我是父类的构造方法");
}
}
MonkeyKing类
public class MonkeyKing extends Hero {
String name = "孙大圣";
public MonkeyKing() {
// 还原程序,对super的调用必须是构造器中的第一个语句
super(); // 在子类构造方法的第一行,没有参数的情况下,默认调用父类的构造方法
// 父类的构造方法有参数的话需要填写参数
// super(参数);
System.out.println("我是子类的构造方法");
}
public void chi() {
// 想看到父类中的name
System.out.println(super.name);
// 先找自己类,然后找父类
System.out.println(this.name + "在吃桃子");
}
public static void main(String[] args) {
MonkeyKing s = new MonkeyKing();
s.chi();
}
}
吾生也有涯,而知也无涯。