为什么只能有一个Public类?
因为每一个JAVA的编译单元(每个.java文件就是一个编译单元)只能接受一个public类,并且从这个类中找到程序的入口——main方法。
因此Public类的类名必须和Java文件名一样,JVM才能快速的找到要编译的类。
可以没有public类吗?
可以没有public类,不过这样的话,在运行java程序的时候,IDE就会要求你选择数据来源是哪一个具体的类。
这个时候类名就可以不用和Java文件名一样了,毕竟JVM已经不用找要编译的类了,由你来指出要编译的类是哪一个。