Java中的局部变量、实例变量、类变量、final变量

学习Java挺长时间了,对于java中的基本知识虽然平时知道怎么用,但是有的时候还是有些难以理解。今天把Java中的实例变量、局部变量、类变量与final变量之间的关系的思路重新整理一遍,在此分享一下。

首先先说一下局部变量:这是我们接触java或者其他编程语言最早接触的东西,他定义在方法中,使用之前必须进行初始化,且生命周期尽在该方法中有效。

实例变量:只有在实例化对象后才可以使用,变量归对象所有。每当实例化一个对象时,总会创建一个副本并初始化,如果没有进行显式的初始化,则会初始化一个默认值。各个实例化对象的副本之间互相独立,之间没有耦合。

类变量:该变量使用static修饰符修饰,随着类的加载而可以使用(类名.变量名),属于类所有。在程序中仅加载一次,分配独立的存储空间(静态区),所有实例化的对象共享类变量。

final变量:使用static final 修饰,表示该变量为常量,显示初始化之后不可以被修改,类似于C/C++中的全局变量,虽然Java中并不是这种叫法。
代码举例:

public class VariableTest {
    char ch = 'a';
    public static int numInt = 100; //成员变量
    public staitc int testStatic() {
        static final int i = 2; // static final 变量
        int x = 5;  //局部变量
        System.out.println(i+x);
    }
    public static void main(String[] args){
        System.out.println(Variable.numInt);
        VariableTest test = new VariableTest();
        test.testStatic();
        System.out.println(test.ch);
    }
}

运行结果:

100
 7
 a
发布了18 篇原创文章 · 获赞 5 · 访问量 856

猜你喜欢

转载自blog.csdn.net/weixin_44762188/article/details/100045954