super关键字

  • super是直接父类对象的引用。可以通过super来访问父类中被子类覆盖的方法和属性。
  • 普通方法:
    1.没有顺序限制,可以随便调用。

  • 构造函数中:
    1.任何类中的构造函数中,若是构造函数的第一行代码没有显式的调用,
    super(….);那么Java默认都会调用super();作为父类的初始化函数。所以你这里的super()加不加都无所谓。

package theChildOfGod.bjxy.oop.inherit;

public class Animal{
    String eye;

    public Animal() { //即使不写,构造方法这也是默认的。
        super();
        System.out.println("建一只动物");
    }
    public void run() {
        System.out.println("跑跑!");
    }
    public void eat() {
        System.out.println("吃吃!");
    }
    public void sleep() {
        System.out.println("zzzzzz");
    }
}
class Mammal extends Animal{
    public Mammal() {
        super();
        System.out.println("建一只哺乳动物");
    }
    public void taisheng() {
        System.out.println("我是胎生");
    }
}
class Bird extends Animal{ 

    public Bird() {
        super();
        System.out.println("建一只鸟");
    }
    public void run(){
        System.out.println("我是一只小小鸟!飞呀飞不高!");
    }
    public void eggSheng() {
        System.out.println("卵生");
    }
}

package theChildOfGod.bjxy.oop.inherit;

public class Test {

    public static void main(String[] args) {
        Bird b = new Bird();
        b.run();
    }
}

猜你喜欢

转载自blog.csdn.net/qq_39588027/article/details/79848798