- 深入理解main方法
解释main方法的形式: public static void main(String[] args){ }
1. main方法时是虚拟机调用
2. java虚拟机需要调用类的main()方法,所以该方法的访问权限必须是public
3. java虚拟机在执行main()方法时不必创建对象,所以该方法必须是static
4. java虚拟机不需要接受返回值,所以是void
5. 该方法接受String类型的数组参数,该数组中保存执行java命令时传递给所运行的类的参数
6. java在执行的程序时把参数打包成一个字符串传给方法 参数1 参数2 参数3
- 提示:
1.在main()方法中,我们可以直接调用main方法所在类的静态方法或静态属性
2.但是,不能直接访问该类中的非静态成员,如果访问必须先创建该类的一个实例对象后才能通过这个对象去访问类中的非静态成员
package com.learn.main_;
import sun.applet.Main;
public class Main01 {
//静态变量(属性)
private static String name = "咕咕猫";
//静态方法
public static void hi(){
System.out.println("Main01的 hi方法");
}
//非静态变量(属性)
private int n1 = 100;
//非静态方法
public void cry(){
System.out.println("Main01的 cry方法");
}
public static void main(String[] args) {
//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();
}
}