问题描述
java中的main为什么要用static修饰呢还有main为什么在类定义里面呢?
解决方案
解决方案二:
java的语法规则,必须从main(String[]args)开始定义为static,因为刚进入main方法时,没有任何实例初始化,static修饰的变量和方法在类加载的时候便加载了所以static修饰main方法,可以在不new实例的情况下自己执行
解决方案三:
引用1楼magi1201的回复:
java的语法规则,必须从main(String[]args)开始定义为static,因为刚进入main方法时,没有任何实例初始化,static修饰的变量和方法在类加载的时候便加载了所以static修饰main方法,可以在不new实例的情况下自己执行
楼上正解,补充点,java是完全面向对象的,所有的方法都要定义在类中,main方法也不例外
解决方案四:
楼主以前学C/C++?
解决方案五:
首先main是一个方法,java是面向对象的方法必须要写在类里,且若为普通方法,需要通过实例化对象来调用,static方法可直接用类名.方法名来调用另外main应该是java规定的程序运行时会去寻找的方法名,static修饰也就是无需实例化,只要加载了当前类就可以调用所以调用顺序应该是先加载main方法所在的类,然后再调用main方法
解决方案六:
王八的屁股,规定
解决方案七:
该回复于2014-09-19 14:30:49被版主删除
解决方案八:
引用2楼windsunmoon的回复:
Quote: 引用1楼magi1201的回复:
java的语法规则,必须从main(String[]args)开始定义为static,因为刚进入main方法时,没有任何实例初始化,static修饰的变量和方法在类加载的时候便加载了所以static修饰main方法,可以在不new实例的情况下自己执行楼上正解,补充点,java是完全面向对象的,所有的方法都要定义在类中,main方法也不例外
看到您的话有点不解面向对象语言,所有的语言都要依赖类吗?
解决方案九:
这是Java自身要编译运行代码必须的main方法啊,就想c/c++中的intmain()
解决方案十:
学习中,知识点就是要按照规定来写的,不按规定写就会报错,多了解了解规范吧
解决方案十一:
为了兼容罢了,因为java的函数是不能脱离类存在的,如果不加static,那么在运行这个main方法之前你还得把main所在的类new出来,这与main作为入口函数的功能是冲突的,所以就得将main声明为静态的,这样虽然形式上main还是在类里面,但实际上和c里面的全局函数没区别了。
解决方案十二:
对于那些规定没必要去扣,有些东西记住就行
解决方案十三:
main用static关键字修饰,目的是告知编译器main函数是一个静态函数。也就是说main函数中的代码是存储在静态存储区的,静态方法在内存中的位置是固定的,即当定义了类以后这段代码就已经存在了。
解决方案十四:
main方法是一个入口而已,就是写死了而已,为啥是static的呢因为在类加载的时候,你可以直接用类名调用static的方法但是为啥要设计成static的呢,不加static就不能调用了吗其实也是可以的就是比较麻烦因为如果你不设计成static的就要new出来对象,但是当你new的时候你知道你这个调用main方法的构造器吗?有的有默认的还好说,没默认的不就麻烦了吗?所以直接就定义成static的得了
解决方案十五:
引用1楼magi1201的回复:
java的语法规则,必须从main(String[]args)开始定义为static,因为刚进入main方法时,没有任何实例初始化,static修饰的变量和方法在类加载的时候便加载了所以static修饰main方法,可以在不new实例的情况下自己执行
解释的很到位,
解决方案:
首先Java运行的主接口就是main方法,main是一个方法,调用必须有类的对象,所以方法必须定义在类中。Java的main方法之所以定义为static是因为,静态的是不需要创建对象的,java运行是把类加载到虚拟机(JVM)中运行,这样当类加载到JVM当中时不需要创建对象就可以直接调用main方法,从而程序才能开始运行。
解决方案:
main是Java编程的入门。鉴于楼主是Java初学者,所以,你目前只需了解程序是由main开始执行的即可。不必纠结太多,随着对Java的深入理解,你会慢慢理解HelloWorld并不是那么简单。
解决方案:
java程序的入口,记住就行
解决方案:
初学时最好先不要扣的这么深,main的写法先记住就行,哥们继续往下学吧,随着后面知识的概念和理解你就会明白的。。。
解决方案:
边学边用在理解一时理解不了用多了慢慢体会后面还有好多抽象的东西很钦佩楼主对待事物的态度做事情的态度编程不是那么容易的事情
解决方案:
解决方案:
引用楼主leletao777的回复:
java中的main为什么要用static修饰呢还有main为什么在类定义里面呢?
1.定义为static的目的是想在类外可以访问main函数;2.既然已经是static,定义在类里面或者是类外面是一样的,但定义在类里面是为了体现java“一切都是类”的思想。