在定义构造方法时,构造方法没有返回值,普通没有返回值的方法使用public void methodEx()这种形式进行定义,但构造方法并不需要使用void关键字进行修饰。
如果在类定义的构造方法都不是无参构造方法实例化一个对象时,那么编译器也不会为类设置一个默认的无参构造方法,当试图无参构造方法实例化一个对象时,编译器会报错,所以只有在类中没有定义任何构造方法时,编译器才会在该类中自动创建一个不带参数的构造方法。
1 class AnyThing{ 2 public AnyThing(){ 3 this("this调用有参构造方法"); 4 System.out.println("无参构造方法"); 5 } 6 7 public AnyThing(String name){ 8 System.out.println("有参构造方法"); 9 } 10 }