zoukankan      html  css  js  c++  java
  • 成员变量和局部变量

    对比 成员变量 局部变量
    声明位置 在类的范围里定义的变量 在方法里定义的变量
    作用域 其所在的整个类 从定义的位置开始到其所在语句块结束
    默认初始值 没有
    存储 未被static修饰的成员变量也叫实例变量,它存储于对象所在的堆内存中,生命周期与对象相同;
    被static修饰的成员变量也叫类变量,它存储于方法区中,生命周期与当前类相同。
    局部变量存储于栈内存中,作用的范围结束,变量空间会自动的释放

    注意:
    如果成员变量与局部变量的名字相同,则在局部变量的作用范围中,优先使用的是该局部变量;如果想使用成员变量,则需要关键字this来引用成员变量。

    上代码:

    public class Dog {
        String dogName = "二哈";
    
        public static void main(String[] args) {
            Dog dog = new Dog();
            dog.getDogName();
        }
    
        public void getDogName() {
            // 局部变量与成员变量名字相同,都是dogName
            String dogName = "萨摩";
            // 此处获取的是局部变量的值,输出“萨摩”
            System.out.println(dogName);
            // 此处获取的是成员变量的值,输出“二哈”
            System.out.println(this.dogName);
        }
    }
    
    
  • 相关阅读:
    训练赛
    树形dp专题
    返回的中文乱码问题
    富文本内容放在xml标签中;
    xml 截取 标签中的字符串;字符串去掉空格
    Intetn 传输 (2)
    安卓修改标题栏
    简单的数据存储(SharedPreferences.Editor)
    Intent的数据传输
    python实现快排+冒泡排序
  • 原文地址:https://www.cnblogs.com/Subaru/p/15499507.html
Copyright © 2011-2022 走看看