Java中的super关键字何时使用
2024-09-07 23:44:22
子类的构造函数中不是必须使用super,在构造函数中,如果第一行没有写super(),编译器会自动插入.但是如果父类没有不带参数的构造函数,或这个函数被私有化了(用private修饰).此时你必须加入对父类的实例化构造.而this就没有这个要求,因为它本身就进行实例化的构造.
如果父类的构造函数是无参的,那子类构造函数会在第一行默认调用super().
下面这种情况是必须调用super()的:
public class Father {
public String name;
public Father(String name) {
this.name = name;
}
} class Son extends Father{
public Son(String name) {
super(name);
}
//必须调用,否则他会默认调用父类的无参构造函数,而父类的无参构造函数已经被有参的覆盖,所以找不到
最新文章
- 关于springMVC+Mybatis jar包详解
- ASP.NET 一步步开发自己的博客 .NET版(11、Web.config文件的读取和修改)
- VBA_Excel_教程:字典类型
- [New Portal]Windows Azure Cloud Service (34) TechEd 2013 North America关于Azure的最新消息
- NAT/PAT
- cocos2dx混合模式应用———制作新手引导高亮区域
- win7 一些快捷系统工具命令
- [书目20131223]Android、iPhone、Windows Phone手机网页及网站设计:最佳实践与设计精粹 - 张亚飞
- 【python自动化第七篇:面向对象进阶】
- HDU5311
- SQL Server Service Borker 1
- jvm栈和堆详解
- WCF技术剖析之二十三:服务实例(Service Instance)生命周期如何控制[下篇]
- PHPStudy+PHPStorm下配置隐藏项目入口文件
- python实现有序字典
- 【bfs】麻将游戏
- The First Day Of Cnblogs
- 转载:VOC2007数据集制作
- 038 关于HIVE的配置
- Scapy安装以及简单使用