局部变量与成员变量的·区别!

本文探讨了局部变量与成员变量在定义位置、作用范围、默认值、内存位置和生命周期上的差异,通过实例说明两者概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

局部变量与成员变量的不同

1,定义的位置不同(重要)
局部变量:在方法的内部
成员变量:在方法外部,直接写在类当中

2,作用范围不一样
局部变量:只有在方法体内才有效,出了方法就不能在用了
成员变量:整个类都可以用。

3,默认还是不一样的
局部变量:没有默认值,使用时需手动赋值。
成员变量:如果没有赋值,会使用默认值,规则和各种类型数据一样

4,内存位置不一样(了解)
局部变量,位于栈内存当中。
成员变量:位于堆内存当中。

5,生命周期不一样
局部变量:随方法进栈而诞生,随访发出栈而消失。
成员变量:随方法创建而诞生,随之对象垃圾回收(java的垃圾回收机制)
而消失。

试验一下:

    String name;

    public void main() {
        int n = 30;
        System.out.println(n);
        System.out.println(name);
    }

    public void as(int as) {//方法的参数就是局部变量
        System.out.println(as);//不报错是因为,方法
        // 被调用时必然会被赋值的
        int  n;
        int b = 30;
        //System.out.println(n);//错误写法,
        // 没有赋值无法使用

        System.out.println(b);
        System.out.println(name);
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值