谁了解java的基础知识呀?

Java应用程序必须要有主类吗?
Java应用程序的主类必须是public类吗?

在Java中,应用程序需要有一个包含 main() 方法的类来作为入口,因此通常会指定一个主类(Main Class)来运行应用程序。但并不是所有的Java应用程序都必须要有主类,比如一些轻量级的工具类、库类等。

至于主类是否必须是public类,实际上并不一定。如果主类所在的Java源文件只包含这个类的定义,而且该文件名与主类名相同,那么主类可以是 public 或非 public 类型。但是如果该Java源文件中定义了多个类,那么必须将主类定义为 public 类型,并且文件名也必须与主类名相同,这样才能被Java编译器正确识别。

在Java中,应用程序必须有主类,这个主类指的是包含main()方法的类。main()方法是Java程序的入口,也就是程序开始执行的地方。

Java应用程序的主类不一定是public类。虽然很多示例代码中使用的主类是public类,但实际上这并不是必须的。Java应用程序的主类可以是任何类,只要它包含一个public static void main(String[] args)方法即可。例如,下面的代码是一个完整的Java应用程序,它的主类不是public类:

class MyMainClass {

    public static void main(String[] args) {

        System.out.println("Hello, world!");

    }
}

需要注意的是,如果主类不是public类,那么在编译和执行时需要注意类的可见性。如果主类和其他类在同一个包中,那么可以直接使用主类;如果主类和其他类不在同一个包中,那么需要在其他类中使用import语句导入主类。

在java中,main()方法是java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void类型的,方法必须是接受一个字符串数组的参数等。
因为main()方法是由Java虚拟机调用的,所以必须是public,虚拟机调用的main()方法的时候,不需要产生任何对象,所以main()方法声明为static,且不需要返回值,所以必须声明为void!
至于java应用程序的主类是public类不是必须的,不需要public修饰也可以运行