一. Java中变量的分类
Java中变量根据声明位置不同可以分为:成员变量和局部变量。
成员变量又分为静态成员变量和实例成员变量。如果使用static关键字修饰又称为静态成员变量,如果没有static修饰又称为实例成员变量。
/** * @author positiveenergychina * @create 2022/9/22 21:58 */ public class MemberVariableAndLocalVariable { static int a;//在类中声明静态成员变量a,使用默认的初值 int b; //在类中声明实例成员变量b,使用默认的初值 static int c=5;//在类中声明静态成员变量并赋初值 static int d;//成员变量可以在类体中声明,在方法体中赋初值 int f;// public static void main(String[] args) { int b=12;//在方法中声明局部变量b并赋值 MemberVariableAndLocalVariable m= new MemberVariableAndLocalVariable(); c=10; //在方法中再一次对静态成员变量赋值 //静态成员变量a的调用,类名.静态成员变量名,同一类中类名可以省略,使用默认的初值 System.out.println(MemberVariableAndLocalVariable.a);//a=0 //实例成员变量b的调用,对象名.实例成员变量名,只能使用对象来调用 System.out.println(m.b);//实例成员变量b=0 //虽然和成员变量重名但是没有对象来调用,所以此处的b不是成员变量,只是局部变量 System.out.println(b);//局部变量b=12 c=20; //静态成员变量在类中和在方法中,多次被赋值,java遵循就近原则会自动访问离它最近的数据。 System.out.println(c);//c=20,遵循就近原则 System.out.println(MemberVariableAndLocalVariable.a+m.b+b+c);//运行结果32 d=20; m.f=18; System.out.println(d+m.f); } }
在类体中,成员变量不能先声明,后赋值:
成员变量可以在类体中声明,在方法体中赋初值
如果感觉对你有用就点个赞,谢谢!