Will the compiler-generated default constructor be public?

前端 未结 7 1295
小鲜肉
小鲜肉 2021-01-12 05:36

When I write a class Widget.java

public class Widget {
    int data;
    String name;
}

will the compiler-generated constructo

7条回答
  •  不思量自难忘°
    2021-01-12 05:51

    As said in JLS

    If a class contains no constructor declarations, then a default constructor that takes no parameters is automatically provided:

    1. If the class is declared public, then the default constructor is implicitly given the access modifier public;
    2. If the class is declared protected, then the default constructor is implicitly given the access modifier protected;
    3. If the class is declared private, then the default constructor is implicitly given the access modifier private;
    4. Otherwise, the default constructor has the default access implied by no access modifier

提交回复
热议问题