Java 中的包可见性问题
Package Visibility Issue in Java
详情:
我正在尝试使用以下目录结构从命令行构建一个 java 项目:
proj/
Makefile
Main.java
lexer
tokens
ast
interpreter
lib
问题:
我假设 Main.java 可以访问所有四个文件夹中的所有 classes
、enums
、interfaces
和 annotations
。但是,如果我想在 tokens
包中使用 enum
,有什么办法吗?顺便说一句,我的意思是我应该使用什么访问说明符来完成我的用例?
我在问这个问题之前使用的链接:
-https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
-https://medium.com/virtuslab/on-the-missing-package-private-or-why-java-is-better-than-kotlin-in-this-regard-4a1c9ecbe40c#:~:text=The%20default%20access%20modifier%20in,类%20in%20the%20same%20package.&text=It %20was%20hardly%20used%20and,fields%20when%20inheritance%20was%20needed.
-http://gauss.ececs.uc.edu/Courses/c694/lectures/Visibility/visibility.html
提前致谢。
编辑:Main 可以从包中导入并且 main 在默认包中。
详情:
我正在尝试使用以下目录结构从命令行构建一个 java 项目:
proj/
Makefile
Main.java
lexer
tokens
ast
interpreter
lib
问题:
我假设 Main.java 可以访问所有四个文件夹中的所有 classes
、enums
、interfaces
和 annotations
。但是,如果我想在 tokens
包中使用 enum
,有什么办法吗?顺便说一句,我的意思是我应该使用什么访问说明符来完成我的用例?
我在问这个问题之前使用的链接:
-https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
-https://medium.com/virtuslab/on-the-missing-package-private-or-why-java-is-better-than-kotlin-in-this-regard-4a1c9ecbe40c#:~:text=The%20default%20access%20modifier%20in,类%20in%20the%20same%20package.&text=It %20was%20hardly%20used%20and,fields%20when%20inheritance%20was%20needed.
-http://gauss.ececs.uc.edu/Courses/c694/lectures/Visibility/visibility.html
提前致谢。
编辑:Main 可以从包中导入并且 main 在默认包中。