首页 > 文章列表 > Java中不同类型变量的区别是什么?

Java中不同类型变量的区别是什么?

java
246 2023-05-04

区别

1、在类中的位置

成员变量:类中,方法外

2、在内存中的位置

成员变量:堆

局部变量:栈

3、初始化的值

成员变量:有默认值

局部变量:没有默认值,只有定义,赋值,才能使用

生命周期

成员变量:随着对象的创建而创建,随着对象的消失而消失

局部变量:随着方法的调用而存在,随着方法的结束而消失

实例

成员变量和局部变量的重名问题,就近原则;

可以使用this关键字区分,this.string指的是类中的成员变量,而不是方法内部的。

public class Demo{
    String string= "成员变量";
 
    public static void main(String[] args) {
        new Demo().show();
    }
 
    public void show() {
        String string= "局部变量";
        System.out.println(string);
    }
}