变量分类
静态变量 : 类中使用static修饰
成员变量 : 类中非static修饰
局部变量 : 方法中声明的变量是局部变量,作用域让当前方法使用
例:
public class A{
//a为静态变量
static int a = 10;
//b为成员变量
int b = 3;
public static void main(String[] args){
//c为局部变量
int c = 2;
System.out.println(a);
System.out.println(b);
System.out.println©;
}
}
初始化时机
- 静态变量 : 类加载阶段初始化
- 成员变量 : 创建对象的时候初始化(构造方法)
什么是类加载阶段呢?可以简单理解为main方法加载之前,静态变量和静态语句块无优先级高低,从上向下加载的过程。
什么是创建对象初始化呢?
例:对于class student{java代码块;}
student a = new student();
a.xxxx
来二次调用的过程就是创建对象初始化,可以有参也可无参。
应用场景
静态变量 : 类级别的,是所有对象共享的.不可修改且相同
成员变量 : 对象和对象之间有相同的属性,但是可能有不同的值,非对象共享
举个例子
这是个学生类
主类和main方法
输出结果
希望可以对你有所帮助。