深入理解main方法

简介: 深入理解main方法

1. 深入理解 main 方法

  • 解释main方法的形式:public static void main(String[] args){}
  1. main方法是虚拟机调用的
  2. java虚拟机需要调用类的main()方法,所以该方法的访问权限必须是public
  3. java虚拟机在执行main()方法时不必创建对象,所以该方法必须是static
  4. 该方法接收String类型的数组参数,该数组中保存执行java命令时传递给所运行的类的参数。
  5. java 执行的程序 参数1 参数2 参数3

在这里插入图片描述

public class Hello {
    public static void main(String[] args) {
        // args 是如何传入的
        // 遍历显示
        for (int i = 0; i < args.length; i++) {
            System.out.println("第" + (i + 1) + "个参数=" + args[i]);
        }

    }
}

在这里插入图片描述

  • 特别提示:

1) 在 main()方法中,可以直接调用 main 方法所在类的静态方法或静态属性
2) 但是,不能直接访问该类中的非静态成员,必须创建该类的一个实例对象后,才能通过这个对象去访问类中的非静态成员。

public class Main01 {

    //静态变量
    private static String name = "兮动人";

    //非静态的变量
    private int n1 = 1000;

    //静态方法
    public static void hi(){
        System.out.println("Main01 的 hi方法");
    }

    //非静态方法
    public void cry(){
        System.out.println("Main01 的 cry方法");
    }


    public static void main(String[] args) {

        //可以直接使用 name
        //1.静态方法main 可以访问本类的静态成员
        System.out.println("name=" + name);
        hi();

        //2.静态方法main 不可以访问本类的非静态成员
        //System.out.println("n1=" + n1);
        //cry();

        //3.静态方法 main 要访问本类的非静态成员,需要先创建对象,再调用即可
        Main01 main01 = new Main01();
        System.out.println(main01.n1);
        main01.cry();

    }
}

在这里插入图片描述

2. 在 Idea 下如何传递参数

  • 案例 Main02.java
public class Main02 {
    public static void main(String[] args) {

        for (int i = 0; i < args.length; i++) {
            System.out.println("第" + (i + 1) + "个参数=" + args[i]);
        }

    }
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

目录
相关文章
|
6月前
|
程序员 C语言 开发者
int main() 作用详解
int main() 作用详解
481 0
|
1月前
|
编译器 C语言
2.1 main函数
在C程序中,执行总是从`main()`函数开始。`main()`函数为程序的基本模块,其返回类型为`int`,表示返回一个整数值。尽管函数名后的括号通常包含传入信息,但在本例中其为空,表明无参数传递。注意旧版C代码可能省略`int`与`(void)`,但现代标准如C99和C11不支持这种写法,因此应避免使用。
24 8
为什么要写 __name__ == “__main__”
if __name__ == "__main__" 模式在Python中用于区分模块是被直接运行还是被导入。通过这种模式,可以编写既可以作为独立脚本运行又可以作为模块导入的代码,从而提高代码的重用性和可维护性。
|
6月前
|
程序员 Shell C语言
【C/C++ main函数】深入探索C++中的main函数及其参数
【C/C++ main函数】深入探索C++中的main函数及其参数
871 0
|
Go 测试技术
init函数与main函数
init函数与main函数
106 0
init函数与main函数
|
Java
main参数
main参数
59 0
main参数
C#基础之Main函数
C#基础之Main函数
93 0
C#—Main方法
今天在敲委托代理第三个例子的时候遇到了这样的问题
|
编译器 C++
C++ 是否存在一个在main()主函数之前就执行的函数? 这个可以有!
C++ 是否存在一个在main()主函数之前就执行的函数? 这个可以有!
126 0
|
Java
main主函数(主方法)里头的参数String[] args有啥作用?
很多老铁不清楚JAVA主方法中main()里面的的参数是什么意思,以及有什么作用,接下来给大家用最通俗易懂的话来讲解。
180 0
main主函数(主方法)里头的参数String[] args有啥作用?