• 成员变量和局部变量


    对比 成员变量 局部变量
    声明位置 在类的范围里定义的变量 在方法里定义的变量
    作用域 其所在的整个类 从定义的位置开始到其所在语句块结束
    默认初始值 没有
    存储 未被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);
        }
    }
    
    
  • 相关阅读:
    mac 下安装jenkins
    Appium元素定位难点:tap坐标定位不准确
    Appium元素定位难点:混合式的native+webview
    Linux 上安装 appium
    springMVC之AOP
    设计模式之装饰模式
    设计模式之桥接模式
    MyBatis特殊字符转义
    python+urllib+beautifulSoup实现一个简单的爬虫
    设计模式之代理模式
  • 原文地址:https://www.cnblogs.com/Subaru/p/15499507.html
Copyright © 2020-2023  润新知