main函数其实也是所在类的一个方法,就比如一个类是test,那么该类的main其实就是test.main(String[] args),众所周知如果一个方法不是静态的,则要先实例化该类,比如要这样 test t=new test(); 
然后才能调用 test.main(); 
而这对于运行一个程序的主函数来说是不现实的,所以比如把main函数定义为static,使test.main()可以直接被调用。

因为是程序入口啊  
不然你从哪里开始new对象 ?

所有static成员都是在程序装载时初始化的,被分配在一块静态存储区域。这个区域的成员一旦被分配,就不再改变地址啦。直到程序结束才释放。
main()就存储在这里。
尽管包含main()的类还没有被实例化,但是main()方法已经可以使用啦。

我觉得这个解释比较合理,另外常驻内存的方式就是使用static,而且main方法是程序的入口,是启动
Java虚拟机的,所以也没有太多的讨论的价值!

如果main不是静态,在一个Test类下面,我们怎么运行呢。 
Test t=new Test(); 
t.main(); 
这样程序才能运行,....这样不是很麻烦么

程序的入口; 
如果整个程序没有一个静态方法, 你怎么启动她?

转载于:https://www.cnblogs.com/liushao/p/6377414.html

main方法为什么是静态的相关推荐

  1. Java:关于main方法的10道面试题

    转载自 Java:关于main方法的10道面试题 1.main方法是做什么用的? 2.不用main方法如何运行一个类? 3.main方法如何传递参数?传递参数的类型是什么?能不能改变该参数类型? 4. ...

  2. main方法_十个经典的 Java main 方法面试题

    以下是笔者认为比较经典的关于Java main方法的面试题,与其说是Java面试题,其实也是Java的一些最基础知识问题,分享给大家,如有错误,请指出. 1.不用main方法如何定义一个类? 不行,没 ...

  3. main方法中args_public static void main(String [] args)– Java main方法

    main方法中args public static void main(String[] args) is the most important Java method. When you start ...

  4. Java的main方法

    文章目录 引言 一.写法 二.解释 三.运行 参考 引言  写Java代码时,最常用到main方法的场景是运行类中的某一个方法,进行测试,本文简单介绍一下Java的main方法. 一.写法  固定写法 ...

  5. java main 静态代码_java中没有main方法怎么怎么执行静态块中的内容

    展开全部 class Parent { static String name = "hello"; { System.out.println("parent  block ...

  6. 关于java中main方法为什么必须是静态的

    Main方法是我们学习Java编程语言时知道的第一个方法,你是否曾经想过为什么main方法是public.static.void的.当然,很多人首先学的是C和C++,但是在Java中main方法与前者 ...

  7. java静态变量、静态方法、代码块、main方法

    文章目录 一.类变量 / 静态变量(static) 二.类方法 / 静态方法(static) 三.main方法 四.代码块 (一)static代码块 (二)普通代码块 五.属性初始化.代码块.构造器的 ...

  8. JAVA 静态变量,静态方法,main方法详解(韩顺平)

    目录 一.类变量 1.类变量的引入 2.类变量的定义 3.类变量的特点 4.如何定义类变量 5.如何访问类变量 6.类变量使用细节 二.类方法 1.基本介绍 2.定义类方法 3.类方法的访问 4.类方 ...

  9. idea下,Jetty采用main方法启动web项目

    为什么80%的码农都做不了架构师?>>>    对于maven多模块的spring web项目,本地开发时,启动的方式一般有如下几种: 使用容器(tomcat/jetty/resin ...

最新文章

  1. 12月8日中科院刘永鑫报告:宏基因组数据分析的机遇与挑战
  2. 2017年中国人工智能产业专题研究报告(完整版)
  3. 百度入股电商直播服务商“卡美啦” 备战2020年双11
  4. Linux下安装composer报错 The openssl extension is missing / The zlib extension is not loaded等等
  5. 邵国际: C 语言对象化设计实例 —— 命令解析器
  6. linux操作系统基础及应用课后答案,Linux操作系统课后习题答案及复习要点
  7. jsp中页面间传汉字参数转码的方法
  8. 计算机房的正常温度和湿度,什么是机房温度、湿度标准?
  9. Sigcomm2019 High Precision Congestion Control(HPCC)论文阅读笔记
  10. 规避Variable used in lambda expression should be final or effectively final而引发了方法参数值拷贝的问题
  11. 手把手使用 vue-lic3.0 快速构建项目(全)
  12. matlab是计算机模拟吗,MATLAB计算机模拟,MATLAB calculator simulate,音标,读音,翻译,英文例句,英语词典...
  13. 微信公众号Python开发(Wechatpy+新浪云SAE应用)
  14. 专题一:Labview表格控件 及 应用(一)
  15. MYSQL操作+C语言API
  16. GOTS认证辅导,产品要求5%以上的才符合被认可的有机标准的原料
  17. AP微积分水平考试,考什么?怎么考?
  18. springboot毕设项目网上图书商城q3ulr(java+VUE+Mybatis+Maven+Mysql)
  19. Contour Knowledge Transfer for Salient Object Detection
  20. java pdf 水印_Java在PDF中添加水印(文本/图片水印)效果

热门文章

  1. linux系统中指定端口连接数限制
  2. 1078 Hashing
  3. 单元、集成、系统、验收测试比较
  4. 零基础怎么学习web前端开发
  5. [swift 进阶]读书笔记-第十一章:互用性 C11P1 实践:封装 CommonMark
  6. 人工智能--野人过河
  7. RPC是什么?为什么要学习RPC?
  8. Ubuntu 16.04安装双显卡驱动方法收集
  9. corosync+pacemaker+crm简单配置
  10. SQL:安装多个实例,修改实例端口号,和IP加端口号连接实例