41_面向对象_14_继承_super_构造器的调用_继承的内存分析(非常重要)

来源:互联网 发布:linux查看当前用户和组 编辑:程序博客网 时间:2024/06/08 15:18

super

  • super是直接父类对象的引用。可以通过super来访问父类中被子类覆盖的方法或属性。
  • 除了Object类之外其他所有类的构造方法第一句总是super(…)
  • 任何类的构造方法中,若是构造方法的第一行代码没有显式的调用super(…);那么Java默认都会调用super(); 所以这里的super(); 加不加都无所谓。
 /** * 测试继承 * @author  * */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("建一个鸟对象");    }}
public class Test {    public static void main(String[] args) {        Bird b = new Bird();        b.run();    }}

内存分析:
这里写图片描述

阅读全文
0 0
原创粉丝点击