在java中,为什么每个类都必须声明它所属的包。我的意思是,已经使用该文件夹描述/强制执行包层次结构 文件系统的结构。在我看来,这一行:
package com.mypackage;
因为每个类的第一行是某种冗余信息。但我很确定它有充分的理由在那里。
答案 0 :(得分:3)
我的意思是,已经使用文件系统的文件夹结构描述/强制执行包层次结构。
不一定。虽然以这种方式组织代码当然是个好主意,但这不是必需的。还要记住,源代码不需要在文件系统中开始。
从根本上说,我认为将源文件的内容作为重要的事情是完全合理的。哎呀,你可以把它带到另一个极端并假设类是由文件名声明的 - 这不仅仅是一个约定,而是一个明确有效的(在JLS中)由编译器强制执行的公共顶级类。