当前位置:  技术问答>java相关

main()函数前为何要加static?

    来源: 互联网  发布时间:2017-04-06

    本文导语:  main()函数前为何要加static? static 函数只能调用static成员,而main()函数可以调用non-static成员。 这不是互相矛盾了吗? | 1.main函数前面可以没有static。不信你编译看看,但是运行不通过,因...

main()函数前为何要加static?
static 函数只能调用static成员,而main()函数可以调用non-static成员。
这不是互相矛盾了吗?

|
1.main函数前面可以没有static。不信你编译看看,但是运行不通过,因为对于一个java的application而言,static void main(String args[])这样的写法是必须的,以保证main函数合法且先执行。事实上该函数可以超载。
2.调用非staic函数的前提是必须对包含该函数的类进行实例化,如果不实例化,当然不行。因为main函数的运行在类实例化之前。(就是说可以认为staic main函数独立于类之外)
3.这是java中最基本也是最迷惑人的地方-----一切staic的函数和变量,都先于类之前初始化或执行。
以上共同借鉴。

|
当我们用java xxx来调用java程序的时候,编译器自动寻找main成员,当然编译器不会自己生成非静态成员的实例,所以必须定义为static

|
不是吧
main 里面一般也就是 new 一个(当前)类

static 函数不用实例化就可以直接调用

|
不可以的,不信你在main函数中设置该类的成员变量试试,会报错的!

    
 
 

您可能感兴趣的文章:

  • 进入程序后的第一个函数main的函数地址是存放在那个寄存器?
  • linux下,在调用main()函数之前怎样得到命令行参数argc和argv??『比如在main()前面构造全局对象时』
  • 如何把main函数隐藏到动态链接库中?(如MFC的做法?)
  • main函数返回收到segmentation fault
  • Linux0.11 内核源码 main函数的参数问题
  • main函数在线程执行完毕之前退出, 线程的哪些资源会被清理?
  • mysql iis7站长之家
  • main.c:252:警告:隐式声明函数 `funcDef`
  • 关于main()函数参数调用的问题,老师请进~谢谢
  • C语言中怎么在main函数开始前执行函数
  • main函数中的参数args[]???
  • 执行一个main函数程序时,unix操作系统调用什么创建进程?fork?newproc?
  • gdb 如何调试带参数的main函数
  • Java中有没有类似于MessageBox的东东?想在main函数中调用,如何做
  • timer是不是不能在Main()函数中使用?
  • windows下的起始函数是winmain,但是qt的主函数是main,如何在windows下启动?
  • 谁能给我讲讲带参数的main函数的用法呀?
  • 在静态上下文中不能引用非静态方法test(),天啊,为什么我的main()不能调用任何其它函数?
  • 怎样用main()直接解译一个对话框?因为对话框的构造函数要一个激活他哪个窗体的参数
  • 请问关掉client 端 main函数结束 发RST包,怎么处理阿。。
  • public static void main(String args[]){...},父类与子类同时定义有这样的main方法,但在子类中运行main时,程序却跑到父类的main中执
  • 我试了一下,main()可以不要public,正常执行.但是Sun的教程上说main()必须是public+static+void的,请各位高手讨论一下!
  • 为什么JAVA里的main()必须是static的呢?谢谢指教!
  • main方法一定要是static的吗?
  • 定义了public static void main(String args[]) 怎么接受不了输入的字符串?
  • main.c里面的static变量在其他源文件里面怎么使用
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.print.attribute.standard类mediatray的类成员方法: main定义及介绍
  • main(String args[])与main(String[] args)有什么区别?
  • java命名空间javax.print类serviceuifactory的类成员方法: main_uirole定义及介绍
  • main(int argc,char *argv[])和main(int argc,char **argv[])的区别
  • java命名空间java.util.jar类attributes.name的类成员方法: main_class定义及介绍
  • 他们说是环境不正确:以知我的代码(极简的),编译没错,运行时出错:“java.lang.NoSuchMethodError: main /Exception in thread "main"
  • 请教一个简单问题。一个BEAN是怎么运行的啊?我运行书里的一个BEAN,告诉我没有main(),可是程序里是有main的啊??谢谢
  • 在root/zxf下生成的可执行文件main怎么运行?
  • 关于main()方法的一个问题
  • 怎样用gcc编译/root/zxf/main.c ?
  • 在maven工程里运行java main方法
  • jar中怎么设定main文件?
  • 请问如何在程序中得到 main()Thread 的 Priority ??
  • cannot declare '::main' to be template
  • ☆ 请教大虾,如何在jar文件中设置 main-class ☆
  • main方法--新手的问题
  • g++ 编译出现:undefined reference to 'main'错误,请教如何解决?
  • android工程下不能运行java main程序的解决方法
  • Exception in thread "main"
  • 有谁告诉我如何使用main中的args进行输入输出的操作?
  • 请教:two or more data types in declaration of `main'


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3