java中main方法的作用

java中main方法的作用main方法是我们学习Java语言学习的第一个方法,也是每个java使用者最熟悉的方法,每个Java应用程序都必须有且仅有一个main方法。在eclipse里可以使用输入main,在按住Alt+/的方式快速创建main方法。可以说main方法是最简单的方法,因为main方法几乎是固定不变得,除了String[]args可以写成Stringargs[],以及args的名称可以改变外,其它所有均不…

大家好,又见面了,我是你们的朋友全栈君。main方法是我们学习Java语言学习的第一个方法,也是每个java使用者最熟悉的方法,每个Java应用程序都必须有且仅有一个main方法。在eclipse里可以使用输入main,在按住Alt+/的方式快速创建main方法。可以说main方法是最简单的方法,因为main方法几乎是固定不变得,除了String[] args可以写成String args[],以及args的名称可以改变外,其它所有均不改变。main方法也是特殊的,因为它的类型必须是public static void,甚至名字都必须是main,还有括号内的参数String[] args,很多初学者都不知道它的作用。正是这种简单而特殊的性质,往往容易让人对它产生忽视以及疑惑。下面就详细谈谈java main方法:

根据Java语言规范,main方法必须声明为public。但是在JavaSE1.4以前的版本中,当main方法不是public时,有些版本的Java解释器也可以执行Java应用程序。详见http://bugs.sun.com/bugdatabase/index.jsp,bug号码4252539。当时SUN公司的工程师解释说,Java虚拟机规范并没有要求main方法一定是public。以上只是写出来,丰富一下兴趣。如果有人说Java main方法从来只能用public,那样说实际上还是错的,因为以前出过这么个BUG。但是在1.4版本之后main方法已经被强制成了public,所以现在我们看到的main方法只能是public。

public是一种访问权限修饰符,public中文翻译共有,正如它的实际意思一样,在Java里面所有被public修饰的方法,类等都可以在任意其他地方调用。main方法之所以是public,是因为一个Java程序在运行时首先创建一个JVM实例,程序要运行需要调用main方法,JVM从外部调用main方法这就需要访问权限修饰符必须给出外部访问的权限,所以只能用public。

static的定义是为了JVM在调用main方法时不用实例化对象,只需要在初始时加载main方法所在类,然后直接通过类名.main来调用main方法。

void表示main方法没有返回值,没有返回值的原因是因为Java不需要main方法向操作系统返回退出信息。如果main方法正常退出,那么Java应用层序的退出代码为0,表示成功的运行了程序。

main的名称不能变是为了JVM能够识别程序运行的起点,main方法可以被重载,重载的main方法不会被执行。main方法作为程序初始线程的起点,任何其他线程均由该线程启动。JVM内部有两种线程,非守护线程和守护线程,main方法属于非守护线程,守护线程通常由JVM自己使用,Java程序也可以表明自己的线程是守护线程。当程序中所有的非守护线程终止时,JVM退出。也可以用Runtime类或者System.exit()来退出。

String[] args,是main方法中唯一可以改变的地方!args是arguments的缩写,只是一个变量默认名,习惯性写作它,但是也可以改变的,只要符合命名规则随便你写成什么。在使用集成开发工具的今天,String[] args更像是一种摆设了,很多初学者都不知道它的作用,其实它是程序运行传入的一个参数组。一个简单的例子:

用文本工具如下代码并将其保存为Test.java

[java] 
view plain  
copy

  1. public class    Test{  
  2.     public static void main(String[] args){  
  3.         System.out.println(“获取数组args[]的数据”);  
  4.         for(int i=0;i<args.length;i++){  
  5.                      System.out.println(args[i]);  
  6.               }  
  7.     }  
  8. }  


以管理员身份运行CMD,因为我的Test.java是直接保存在F盘中的,输入f:跳转到目录,输入Javac Test.java将其编译为Test.class文件

java中main方法的作用

然后输入java Test 5 4 3 2 f xx,获取输出数据

java中main方法的作用

Java中所有方法的代码都是从“{”开始,以“}”结束。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/141645.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月25日 下午1:00
下一篇 2022年5月25日 下午1:00


相关推荐

  • SLAM中的marginalization 和 Schur complement

    SLAM中的marginalization 和 Schur complement在视觉 SLAM 的很多论文中 会大量或者偶尔出现 marginalizat 这个词 翻译为边缘化 有的论文是特地要用它 比如 slidingwindo 2 okvis 3 dso 4 而有的论文是简单的提到 比如 g2o 1 orbslam 因此 很有必要对这个概念进行了解

    2026年3月18日
    2
  • leetcode 颜色分类_leetcode难度

    leetcode 颜色分类_leetcode难度给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。示例 1:输入:nums = [2,0,2,1,1,0]输出:[0,0,1,1,2,2]示例 2:输入:nums = [2,0,1]输出:[0,1,2]示例 3:输入:nums = [0]输出:[0]示例 4:输入:nums = [1]输出:[1] 提示:n == num

    2022年8月9日
    6
  • html列表嵌套

    html列表嵌套Title 目录贴吧导航大事记载等级制度实名制度特点分析品牌价值手机贴吧贴吧客户端贴吧智能版平台推广官方平台贴吧推广列表嵌套 无序嵌套在有序中 直接在大的里面 根据

    2026年3月17日
    2
  • 12位adc的分辨率计算_ADC的量化误差

    12位adc的分辨率计算_ADC的量化误差(一)一个基本概念分贝(dB):按照对数定义的一个幅度单位。对于电压值,dB以20log(VA/VB)给出;对于功率值,以10log(PA/PB)给出。dBc是相对于一个载波信号的dB值;dBm是相对

    2022年8月4日
    5
  • 三维地图下载,3D地图下载,谷歌地球三维地形图查看

    三维地图下载,3D地图下载,谷歌地球三维地形图查看3D地球依据高程数据等对地表进行渲染,实现地表的起伏,模拟出真实的三维场景,让你有如身临其境般的感觉。(注:Bigemap3D地球是一个三维地图浏览功能,是基于高程数据进行的实时渲染,无法进行下载标注等,如需三维城市、创建三维地图模型等,可通过右侧【联系我们】进行咨询。另:3D地球浏览城市时无3D效果)3D地球使用详解1、打开Bigemap地图下载器,点击左下角【3D】地图…

    2022年5月21日
    57
  • OpenClaw(小龙虾)云端部署安装和使用教程

    OpenClaw(小龙虾)云端部署安装和使用教程

    2026年3月15日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号