本帖最后由 铿锵科技 于 2013-2-3 11:31 编辑
有一个父类有3个构造函数- class Fu {
- public Fu(String s, int i) {
- System.out.println("父类2个参数构造函数");
- }
- public Fu(String a) {
- System.out.println("父类2个参数构造函数");
- }
- public Fu() {
- System.out.println("父类没参数构造函数");
- }
- }
复制代码 写一个子类继承父类,并写了2个构造函数- public class DuoTaiDemo2 extends Fu {
- /**
- * @param args
- */
- public static void main(String[] args) {
- new DuoTaiDemo2("", 8);
- //new DuoTaiDemo2("d");//这行为什么会报错
- new DuoTaiDemo2();
- }
- public DuoTaiDemo2() {
- System.out.println("子类2个参数构造函数");
- }
- public DuoTaiDemo2(String s,int i) {
- System.out.println("子类2个参数构造函数");
- }
- }
复制代码 为什么初始化2个子类输出4行结果?
父类没参数构造函数
子类2个参数构造函数
父类没参数构造函数
子类2个参数构造函数
new DuoTaiDemo2("d");//这行为什么会报错?
为什么下面初始化2个子类的输出结果是一样的?
new DuoTaiDemo2("", 8);
new DuoTaiDemo2();
|