41_面向对象_14_继承_super_构造器的调用_继承的内存分析(非常重要)
2017-06-06 19:31
183 查看
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(); } }
内存分析:
相关文章推荐
- java学习之旅41--面向对象_14_继承_super_构造器的调用_继承的内存分析(非常重要)
- 面向对象第十课,继承,super构造器的调用,继承的内存分析(重要)
- Java 面向对象:继承,构造器参数super()
- asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?
- asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?
- java构造函数是否可继承,以及子类构造函数可否不使用super调用超类构造函数
- 面向对象第八课,面向对象三大基本特征,继承,基本概念(重要)
- Java继承关系、构造器的内存分析
- 继承树的构造器调用顺序
- 继承与初始化和构造器的调用
- 【java初学笔记2】马士兵-java-面向对象-31-练习继承、super等内容
- OC第三天-继承,初始化方法,便利构造器 ,self,super,方法重写
- asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?
- java构造函数是否可继承,以及子类构造函数可否不使用super调用超类构造函数
- 第五章 类的继承和super的使用调用父类构造方法
- js类式继承的实现 非常重要
- asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?
- asp.net MVC中怎样让LINQ Designer自动生成的类从别的类继承并调用其基类构造器?
- 继承的约束:构造器不可调用被覆盖的方法
- 12-14面向对象--继承、多态