因为在java中所有非静态方法的调用都必须先构造并实例化该函数所在的类,
如果允许非静态的main,那么main函数所在的类必须先进行实例化,
那么就需要再写一个函数去实例化main函数所在的类,再调用main,若这个函数也是非静态的,那么又需要一个函数去实例化其所在的类,
这些代码毫无意义,所以java规定main函数必须为静态。
因为在java中所有非静态方法的调用都必须先构造并实例化该函数所在的类,
如果允许非静态的main,那么main函数所在的类必须先进行实例化,
那么就需要再写一个函数去实例化main函数所在的类,再调用main,若这个函数也是非静态的,那么又需要一个函数去实例化其所在的类,
这些代码毫无意义,所以java规定main函数必须为静态。