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();
    }
}
原文地址:https://www.cnblogs.com/isChenJY/p/12779822.html