在java中和main方法并列的方法为啥一定要加static

原因就是 main 方法是静态的,所以 main 方法里直接调用的方法也必须是静态的。
【在java中和main方法并列的方法为啥一定要加static】 JAVA里有类的概念,有对象的概念,对象是类的实例,类是对象的模型。说白了就是,类是一个模板,对象就是照这个模板刻出来的具体事物,而静态方法和静态变量,是属于这个模板的,也就是类的,而非静态的方法和变量是从属于对象的,这两者互不干扰。
现在说为什么JAVA不允许静态方法调用非静态方法。假设,我们先创建了一个类,也就是模板,但是还没有用这个模板是生成对象,那么现在我们只有静态方法(因为非静态方法是对象的,目前没有对象)。那么你模板的静态方法,怎么去调非静态方法(压根就没有)?就算有了对象,有非静态方法了,那么你main方法是调用哪个对象的非静态方法呢?因此,你必须明确表明你调用的哪个对象的哪个方法,所以你需要先new一个对象object,然后object.method()。

■网友
在java中和main方法并列的方法为啥一定要加static

你的意思是箭头所指的位置为什么要static是吗?如果sayHello方法不加static的话,那么他就是非静态的,他属于某个具体的对象,这种方法我们只能通过对象.方法名(比如new Main().sayHello())引用。所以main方法中调用sayHello方法有两种方式:sayHello方法加上static,main方法中直接调用sayHello方法不加static,main方法中new一个Main实例,然后调用这个实例的sayHello方法,也就是new Main().sayHello();
■网友
Static是静态的修饰符,加了main可以直接调用
■网友
不是一定要加的 只是你加了之后可以在main方法里面直接调用 不需要创建对象 因为main函数是静态方法 所以有一些方法设置为静态是为了方便调用


    推荐阅读