java super的用法_构造器的调用顺序_继承内存分析。java super: super是直接父类对象的引用。可以通过super来访问父类中被子类覆盖的方法或属性。
构造器所有的构造器里面第一句话都是super调用父类的构造器。java中除了Object类之外其他所有类的构造方法第一句总是super(…)
任何类的构造方法中,若是构造方法的第一行代码没有显式的调用super(…);那么Java默认都会调用super(); 所以你这里的super(); 加不加都无所谓。
java super实例代码:
package cn.bjsxt.oop.inherit;
/**
* 测试继承
* @author 尚学堂高淇www.bjsxt.cn
*
*/
public class Animal /*extends Object*/ {
String eye;
public void run(){
System.out.println(“跑跑!”);
}
public void eat(){
System.out.println(“吃吃!”);
}
public void sleep(){
System.out.println(“zzzzz”);
}
public Animal(){
super();
System.out.println(“创建一个动物!”);
}
}
class Mammal extends Animal {
public void taisheng(){
System.out.println(“我是胎生”);
}
}
class Bird extends Animal {
public void run(){
super.run();
System.out.println(“我是一个小小小小鸟,飞呀飞不高”);
}
public void eggSheng(){
System.out.println(“卵生”);
}
public Bird(){
super();
System.out.println(“建一个鸟对象”);
}
}
package cn.bjsxt.oop.inherit;
public class Test {
public static void main(String[] args) {
Bird b = new Bird();
b.run();
}
}