java强制包声明

标签 java package

<分区>

在java中,为什么每个类都必须声明自己所属的包。我的意思是,已经使用文件夹描述/强制执行包层次结构 文件系统的结构。在我看来,这条线:

package com.mypackage;

由于每个类的第一行在某种程度上是冗余信息。但我很确定它存在的充分理由。

最佳答案

I mean, package hierachy is already described/enforced using the folder structure of the file system.

不一定。虽然以这种方式组织代码当然是个好主意,但这不是必需的。另请记住,源代码不必位于文件系统中。

从根本上说,我认为将源文件的内容作为重要的事情是完全合理的。哎呀,你可以把它带到另一个极端并假设类由文件名声明 - 这不仅仅是一个约定,而且是一个明确有效的(在 JLS 中)由编译器强制执行的公共(public)顶级类。

关于java强制包声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30598977/

相关文章:

java - 排序后的 map 不允许删除

installation - 以编程方式安装 NLTK 语料库/模型,即无需 GUI 下载器?

用于版本控制外部 API 的 Java 包命名

java - 为什么这些图像不显示?

java - 运行一分钟循环 - Android

java - Hibernate 的 Query.setParameter 是否使 SQL 注入(inject)成为可能

python - 为什么导入的包在其他包中可见?

android - 使用 Ionic 包部署应用程序

golang 导入包内包

java - 事务注释在 Spring Boot 中不起作用