我正在阅读一些Java文本,文本说我们只能为类和接口应用public或default访问修饰符.因此,如果我们声明:它是一个编译错误:
private class A {}
Run Code Online (Sandbox Code Playgroud)
要么
protected class A{}
Run Code Online (Sandbox Code Playgroud)
我只是好奇为什么类或接口无法接收private或protected访问修饰符?
我注意到如果不在public课前写,它的作品就像a一样public class.我不明白为什么会这样?当我没有声明一个类时,它应该显示错误public,private或protected.但它运作正常.是什么原因?
我在两个不同的包中有两个类.对于一个类,我已经定义了一个构造函数而没有为它设置访问修饰符.我想在另一个包中实例化该类的对象并获取错误' the constructor xxx() is not visible'.
如果我定义访问修改为public它是好的.我认为构造函数默认是公开的?