显然,Java 有一个访问级别包私有,这是通过不添加任何显式修饰符来实现的。
但是有没有办法显式添加这个修饰符呢?当我们只想使用包中的成员时,我们需要省略访问级别,这有点令人困惑。
如果没有办法,为什么包私有决定作为默认级别?
例如,如果默认级别是公共的,那么我们会更有意识地定义相关的访问级别。
这与为什么使用它的问题不重复,因为我知道为什么,我只是不知道为什么它是隐式定义的并且不能显式定义。
编辑
您可以使用 Lombok 的@PackagePrivate显式定义它
用于指示带注释的实体具有包私有访问级别的明确意图。目前由 FieldDefaults 和 Value 使用,以避免将字段设为公共、受保护或私有字段之一。
@PackagePrivate String thanksLombok;
Run Code Online (Sandbox Code Playgroud)