Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 嵌套类与独立类文件_Java_File_Class_Nested_Subclass - Fatal编程技术网

Java 嵌套类与独立类文件

Java 嵌套类与独立类文件,java,file,class,nested,subclass,Java,File,Class,Nested,Subclass,至少在java中,我的编译器不允许我将两个(或更多)独立的类放在一个类文件中。它迫使我在同一个包中创建多个文件。我理解这是为什么,我同意这一原则。但是,我已经意识到,我可以同样轻松地嵌套类,并将整个程序(不包括导入的库)包含在单个文件中。我想这会让人皱眉,但我不明白为什么。与标准系统相比,嵌套类有哪些危险和缺点(除了组织和整洁方面的严重损失)?好吧,如果您将所有内容都保存在同一个文件中,您将丢失包,并且private关键字不再具有任何意义 鉴于大多数Java项目将在一个IDE中打开,该IDE将不

至少在java中,我的编译器不允许我将两个(或更多)独立的类放在一个类文件中。它迫使我在同一个包中创建多个文件。我理解这是为什么,我同意这一原则。但是,我已经意识到,我可以同样轻松地嵌套类,并将整个程序(不包括导入的库)包含在单个文件中。我想这会让人皱眉,但我不明白为什么。与标准系统相比,嵌套类有哪些危险和缺点(除了组织和整洁方面的严重损失)?

好吧,如果您将所有内容都保存在同一个文件中,您将丢失包,并且private关键字不再具有任何意义

鉴于大多数Java项目将在一个IDE中打开,该IDE将不同的类表示为不同的选项卡,因此程序中可以有多个游标


为什么要将所有内容都放在同一个文件中?

组织和整洁方面的严重损失嵌套所有内容的好处是什么?您可以将整个程序(以及依赖项)存储在单个文件中,但它将是一个
.jar
文件,不是
.java
文件或
.class
文件。您可以在一个源文件中放入任意多个顶级类,只要该文件中只有一个公共类(并且该文件必须具有扩展名为
.java
)的公共类的名称)。其他类必须是仅包的作用域类,因为您不允许在顶级拥有私有类。组织事物而不是将它们都放在同一个框中有什么好处?