- 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();
}
}