黑马程序员技术交流社区

标题: Java中的缺省构造方法 [打印本页]

作者: ﹎◇waiting﹎    时间: 2012-8-1 12:50
标题: Java中的缺省构造方法
如果你写的类中没有构造方法,则编译器会自动帮你创建一个缺省构造方法(无参的构造方法)。

但是,如果你已经定义了一个构造方法(无论是否有参数),编译器就会不会帮你自动创建缺省构造方法。

例如有一个类:


[java]
     class Dog {
     private String name;
  
     Dog(String name) {}
}
class Dog {
     private String name;

    Dog(String name) {}
}
这个类已经有一个有参的构造方法了,编译器会不会帮它自动创建无参的缺省构造方法呢?
作者: 赵俊杰    时间: 2012-8-4 18:31
本帖最后由 赵俊杰 于 2012-8-4 18:33 编辑

这个类已经有一个有参的构造方法了,编译器会不会帮它自动创建无参的缺省构造方法呢?
答:编译器不会再帮你自动创建无参的缺省构造方法了。
按照楼主的代码,如果此时直接new Dog(),编译器就会报错,如果您的确需要无参构造方法,需要您再手动添加一个无参构造方法。
Dog(){
System.out.println("我不用传参,您省事多了");
}

作者: 徐传任    时间: 2012-10-10 22:54
看看..................




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2