虽然java编译器允许一个源文件有多个顶级类,但是很容易出现问题。比如有一个Utensil.java源文件,定义为:
class Dessert{public static String name = "Dessert";}class Utensil {public static String name = "Utensil";}
还有一个Desert.java定义为:
class Utensil {public static String name = "Utensil";}class Dessert{public static String name = "Dessert";}
使用idea IDE会直接报错,显示 Duplicate class found in the file错误lei。
结论:永远不要将多个顶级类放在一个源文件。
