java无参构造函数的意义
2016-04-25 00:00
316 查看
摘要: 创建一个子类对象的实例的时候,必先调用父类的无参构造函数(默认构造函数),假如父类有带参数的构造函数,那么系统不会给他创建无参数的构造函数,这 时,子类在实例化的时候,因为找不到父类的默认构造函数,编译器会报错,如果在子类的构造函数中指定使用父类的带参数的构造函数的时候,或者在父类中加一 个无参数的构造函数的时候,就不会报错了。
我们假设A是B的父类,B是A的子类。
1、如果没有给A类没有提供构造函数,则编译器会自动提供一个默认的构造函数,如果用户提供了自己的构造函数,则编译器不提供默认的构造函数。
2、子类B实例化时会自动调用父类的构造函数,所以如果A的默认的无参数的构造函数为private,则编译器会报错,而如果A没有提供默认的无参数的构 造函数,而提供其他的构造函数,编译器同样报错,因为找不到A的默认无参数构造函数。所以我们编程中最好给一个默认的构造函数。
3、或者在B的构造函数中显示的调用父类A的有参构造函数。super()
我们假设A是B的父类,B是A的子类。
1、如果没有给A类没有提供构造函数,则编译器会自动提供一个默认的构造函数,如果用户提供了自己的构造函数,则编译器不提供默认的构造函数。
2、子类B实例化时会自动调用父类的构造函数,所以如果A的默认的无参数的构造函数为private,则编译器会报错,而如果A没有提供默认的无参数的构 造函数,而提供其他的构造函数,编译器同样报错,因为找不到A的默认无参数构造函数。所以我们编程中最好给一个默认的构造函数。
3、或者在B的构造函数中显示的调用父类A的有参构造函数。super()
相关文章推荐
- foreach遍历map
- Java基础
- MyEclipse中Workspace in use or cannot be created, c
- 这五点是JAVA自学者必须要掌握的技能
- 在eclipse里设置svn快捷键方法
- Num36 spring 核心(二)
- Num37 spring 事务 & ssh整合
- eclipse 生成JavaDoc
- 在spring中获取代理对象代理的目标对象工具类
- 20145104张家明 《Java程序设计》第三次实验设计
- 20145328 《Java程序设计》实验三实验报告
- 20145101《Java程序设计》第8周学习总结
- 20145230《java程序设计》第三次试验报告
- 20145239 《Java程序设计》实验三 实验报告
- 20145316 《Java程序设计》第8周学习总结
- 20145216史婧瑶《Java程序设计》第三次实验报告
- 20145203盖泽双 《Java程序设计》第8周学习总结
- 20145216史婧瑶《Java程序设计》第三次实验报告
- 20145203盖泽双java实验三 敏捷开发与XP实践
- 20145314郑凯杰 《Java程序设计》实验三 敏捷开发与XP实践实验报告