【Java】main方法的深入理解

【Java】main方法的深入理解深入理解 main 方法 publicstatic String args main 方法是 Java 虚拟机在调用 Java 虚拟机需要调用类的 main 方法 所以该方法的方法权限必须是 public 调用的时候

大家好,欢迎来到IT知识分享网。

目录

深入理解 main 方法 public static void main(String[] args)

​编辑示例代码: 

编译运行(String[] args):

main 方法的注意事项

示例代码:


深入理解 main 方法 public static void main(String[] args)

  1. main 方法是Java虚拟机在调用
  2. Java 虚拟机需要调用类的 main() 方法,所以该方法的方法权限必须是 public (∵ 调用的时候 Java 虚拟机和 main 方法不在同一个类)
  3. Java 虚拟机执行 main 方法的时候不必创建对象 ∴该方法必须是 static
  4. main 方法接受 String 类型的数组参数,该数组中保存执行Java 命令时传递给所执行的类的参数

【Java】main方法的深入理解示例代码: 

Test01.java

//package com.面向对象.Demo20; public class Test01 { / * main 主程序运行的入口 * 1.main java 虚拟机调用(java 运行在我们 安装的 虚拟机调用) HotSpot(TM) * 2.java 虚拟机调用(类)Test01.main main访问权限 public * 3.String[] args 方便开发者 在以后运行java程序时 注入参数 到 main 方法中 * * @param args */ public static void main(String[] args) { // static 修饰的成员方法、成员属性 静态的 成员方法、成员属性 / * static 类.访问 * 不需要 new 对象 直接 类.访问 */ // String[] args 字符串数组 / * 前面使用的 编译运行命令 * javac Test01.java * java Test01 参数1 参数2 参数3 * 然后就可以从控制台看到结果 */ for (int i = 0; i < args.length; i++) { System.out.println(i); } } } 

编译运行(String[] args):

【Java】main方法的深入理解


idea如何设置main 注入参数

for (int i = 0; i < args.length; i++) { // System.out.println(args[i]); // 使用javac编译 System.out.println("第" + (i + 1) + "参数:" + args[i]); //idea设置main注入参数 }

step1:先编译运行一下

step2:点击右上角的类名

【Java】main方法的深入理解

step3:Program arguments

【Java】main方法的深入理解

step4:可以在上面的输入框直接写,或者 右边的箭头点开 即可

【Java】main方法的深入理解

step5:保存后 编译运行

【Java】main方法的深入理解


main 方法的注意事项

  • 可以直接访问本类的静态成员
  • 访问本类的非静态成员,需要先创建对象,再调用即可。

示例代码:

Test01.java

package com.面向对象.Demo21; public class Test01 { / * main 方法加上 static 关键字修饰的 * 所以: * 1.main 方法中是可以 直接调用到本类中 静态方法 * 2.main 方法 不能够直接调用非静态方法、访问非静态成员属性 必须通过 new对象 对象.访问。 * * @param args */ private static int staticAge = 30; private int age = 20; public static void main(String[] args) { // mian 方法调用 静态成员方法、静态属性 staticA(); // <=>Test01.staticA(); ∵ staticA()是在本类,∴ Test01. 可以省略 // b();//报错,静态方法 不可以访问非静态方法, //必须先new对象 才可以调用 非静态方法。 Test01 test01 = new Test01(); test01.b(); System.out.println(staticAge); // System.out.println(age);//报错,静态方法 不可以访问非静态属性, System.out.println(test01.age);//必须先new对象 才可以调用 非静态属性。 } public static void staticA() { } public void b() { } } 

下一篇文章: 多态

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/120116.html

(0)
上一篇 2025-10-31 20:10
下一篇 2025-10-31 20:15

相关推荐

发表回复

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

关注微信