是的,您说得对。在Java中,一个.java
文件可以包含多个类,但只能有一个类使用public
修饰符。这个使用public
修饰符的类的类名必须与文件名相同,并且这个类是这个文件的主类,可以被其他类访问和实例化。
其他非public
修饰的类在同一个文件中可以存在,但它们的访问权限仅限于同一个包中的其他类。
例如,考虑以下示例:
// MyMainClass.java
public class MyMainClass {
public static void main(String[] args) {
// 主类的代码
}
}
class AnotherClass {
// 非主类的代码
}
在这个示例中,MyMainClass
是MyMainClass.java
的主类,因为它使用了public
修饰符并且与文件名相同。AnotherClass
是一个非主类,它在同一个文件中存在,但只能在同一个包中的其他类中使用。