super关键字要点
来源:互联网 发布:java 读取文件内容 编辑:程序博客网 时间:2024/06/08 02:17
用于访问父类的成员:
super.成员变量
super.成员方法([参数1],[参数2]...)
使用supe关键字调用父类的构造方法:
super([参数1],[参数2]...)
注意:
在子类的构造方法中一定会调用父类的某个构造方法,这时可以在子类的构造方法中通过super指定调用父类的哪个构造方法,如果没有指定,在实例化子类对象时,会自动调用父类无参的构造方法(当父类定义了带参数的构造方法没有定义无参的构造方法时,父类是没有默认的无参的构造 方法的)。
子类在实例化时默认调用了父类无参的构造方法,所以在定义一个类时,如果没有特殊的需求,尽量在类中定义一个无参的构造方法,避免被继承时出现错误。
package study;
class Animal{
public Animal(String name) {
System.out.println("我是一只"+name);
}
}
class Dog extends Animal{
}
public class Example04 {
public static void main(String[] args) {
Dog dog=new Dog();
}
}
结果:
子类必然会调用父类的构造方法。
要不然是你显式调用,要不然是Java自动调用。
如果父类有不带参数的构造方法,或者父类没有任何构造方法(也就是说有缺省构造方法),那么子类可以不显式调用,子类会自动调用super();
如果父类有带参数的构造方法,却没有不带参数的构造方法,那么如果子类没有显式调用父类构造方法,那么编译会报错。
阅读全文
0 0
- super关键字要点
- super关键字
- 关键字super
- super 关键字
- super关键字
- super关键字
- 关键字super
- super关键字
- super关键字
- Super关键字
- 关键字super
- super关键字
- super 关键字
- super关键字
- super关键字
- super关键字
- Super关键字
- super关键字
- tf.train.exponential_decay()
- python tkinter整理总结
- PHP中explode()和implode()函数讲解和实战用法
- JDK为1.8时使用Realm时build错误和build成功后应用崩溃问题解决
- 通过反射可以获取Class的构造方法 通过构造方法创建对象
- super关键字要点
- 揭秘微信红包:架构、抢红包算法、高并发和降级方案
- hdu4773 Problem of Apollonius【反演变换】
- Vuejs2.5.9源码解读(1) — package.json
- vim编辑器
- java基础
- mac 和 linux内核简单比较
- 队列的实现
- 欢迎使用CSDN-markdown编辑器