结论:

首先java中类名不一定要和java文件名一致,是否一致需要分情况,其次java中可以有多个类,但是最多只有一个类的类名和文件名相同,如果一个类被public修饰,那该类的类名必须和文件名相同,并且一个java文件中最多只有一个类被public修饰

最后补充一点:主方法所在类的类名一定要与文件名一致

演示:

1、java中可以有多个类:

2、java中可以有多个类,但是最多只有一个类的类名和文件名相同

由于上面有两个类的类名都和方法名相同,所以程序报错

3、如果一个类被public修饰,那该类的类名必须和文件名相同

由于public修饰的类名和文件名不同,所以程序报错

4、一个java文件中最多只有一个类被public修饰

由于java文件中有两个类被public修饰,所以程序报错

5、主方法所在类的类名一定要与文件名一致

由于主方法所在的类名和文件名不一致,所以执行主方法的时候程序报错