java的main函数为什么一定要static来修饰

avatar 2017年03月26日10:43:45 1 3372 views
博主分享免费Java教学视频,B站账号:Java刘哥 ,长期提供技术问题解决、项目定制:本站商品点此
答1:
static静态的,也就是程序运行时就要没加载的,main是一个程序的入口,所以要提前加载好,要不谁来调用它啊?程序就没法运行了。
答2:
用static修饰的方法,无须产生类的实例对象就可以调用该方法。
没有static修饰的方法,需要产生一个类的实例对象才可以调用该方法。
main方法必须要static来修饰,是因为main方法是Java解释器调用的,那时候还没有任何对象产生。
答3:
mainID = (*env)->GetStaticMethodID(env, mainClass, "main","([Ljava/lang/String;)V");
这是jvm启动时的代码,直接去找static的,参数为String数组的main方法。
答4:
static修饰的方法,类等,都是在程序启动时就加载的,而且方法无需类的实例就可以直接调用,main方法是程序的入口,所以是必须提前加载好的,然后才能是接下来的程序正常运行,此外,static有这个特点,也就是说,可以没有main方法而执行某些代码。不信,你可以试试
  • 微信
  • 交流学习,有偿服务
  • weinxin
  • 编程爱好者交流群
  • 资源分享,问题解决,技术交流。QQ群:424285828(新群)
  • weinxin
avatar

发表评论

avatar 登录者:匿名
匿名评论,评论回复后会有邮件通知

  

已通过评论:0   待审核评论数:0