目录
一.类变量、类方法
二.理解 main 方法语法
一.类变量、类方法
1)类变量是所有对象实例共享的:
a:基本概念:
-1.类变量 也叫 静态变量 / 静态属性,是该类的所有对象共享的变量,任何一个该类的对象去访问它时,取得的值都是相等的。
-2.同样 任何一个类去修改它,修改对别的类也会可见。
-3.public static String name;
b:不管 static变量 存放在堆还是栈:
-1.static 变量是 同一个类 的所有对象 共享的。
-2.类变量 在 类加载的时候,进行初始化的。
-3.生命周期:随着类加载开始,随着类消亡而消亡。
2)静态方法:
a:静态方法 / 类方法 经典的使用场景:
-1.当方法中,不涉及到任何 和对象 相关的成员,则可以将方法设计成 静态方法,不用创建对象,即可调用方法,提高了开发效率。
-2.比如:工具类 Utils 、Math、Arrays 等工具类下的方法。
b:静态方法 使用细节:
-1. 类方法 和 普通方法,都是随着 类的加载而加载,将结构信息 存储在 方法区:
类方法中 无 this 参数:
普通方法中,隐含着 this 参数。
-2.类方法 可以通过 类名调用,也可以通过 对象名称调用。
-3.普通方法 和对象有关,需要对象名 调用;静态方法直接通过类名称调用。
-4.类方法中,不允许使用 和对象有关的 关键字,比如 :this、super。普通方法可以。
-5.类方法(静态方法)中,只能访问 静态变量 或静态方法。
-6.普通的 成员方法,既可以访问 普通变量、普通方法,也可以访问静态变量、静态方法。
二.理解 main 方法语法
1)main 方法 语法:
public static void main(String[] args) {}
2)注意:(main 方法是由 虚拟机调用的)
a:java 虚拟机 需要调用 main() 方法。所以该方法的访问权限,必须是 public。
b:java 虚拟机 在执行 main() 方法时,不必非要 创建一个对象。所以该方法:必须是 static 的。
c:该方法,接收 String 类型的数组参数,该数组中保存执行 Java 命令时,传递给所运行的类的参数。
d:特别提示:
-1.因为 main 方法是 静态的,所以可以直接通过 类名调用静态方法 和 属性。
-2.但是,要通过实例对象,才能访问非静态成员。
3)idea 向 main 方法中传递参数: