黑马程序员技术交流社区
标题:
main方法
[打印本页]
作者:
jackhai9
时间:
2014-8-12 11:29
标题:
main方法
本帖最后由 jackhai9 于 2014-8-12 12:21 编辑
1.能从深层次讲一下为什么main方法要写在public类中吗?static又怎么理解呢?2.如果要修改程序入口,怎么告诉JVM我的入口改变了?
作者:
sdfe
时间:
2014-8-12 11:38
首先,main方法要要被外部的虚拟机调用的,所以是public,因为main方法不需要实例化就能调用,所以是static,就该告诉虚拟机我是用哪个类启动的,相当于把类名传递给main方法然后调用。
作者:
酋长第一
时间:
2014-8-12 11:50
public:公共的意思。这是一个权限修饰符后。
而main方法被jvm调用,所有权限要足够大。
static:静态的意思。因为jvm调用方法的时候,可以直接通过类名调用,不用创建对象。
HelloWorld.main(...)
void:空返回值。因为jvm即使获取到返回值,我们也无法操作。所以,它获取返回值没有意义。所以,就没有返回值。
main:大家都是这样做的。所以,java语言也是这样做的。
String[] args:这是一个字符串数组,早期是用来接收键盘录入数据的。
作者:
weity
时间:
2014-8-12 11:59
楼上说得都对~
作者:
jw在路途
时间:
2014-8-12 12:04
简单说明。 就是main方法就是控制台编程中的主函数,它在编译之后将成为程序的唯一入口和唯一出口,所有的程序都必须含有一个且只能含有一个主函数,jvm通过提取 .class文件信息,调用main方法。static修饰的方法是类方法,类方法可以 类名.方法名 直接调用,完全不用实例化,这是减少资源消耗的必备条件。至于public,权限修饰符。当jvm在执行main方法时,方法给的访问权限应该是最大,故而用public。
作者:
inception
时间:
2014-8-12 12:42
............
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2