• 7.3 java 成员变量和局部变量区别


    /*
    * 成员变量和局部变量的区别:
    * A:在类中的位置不同
    * 成员变量:类中,方法外
    * 局部变量:方法中或者方法声明上(形式参数)
    * B:在内存中的位置不同
    * 成员变量:堆内存
    * 局部变量:栈内存
    * C:生命周期不同
    * 成员变量:随着对象的创建而存在,随着对象的消失而消失
    * 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
    * D:初始化值的问题
    * 成员变量:有默认值
    * 局部变量:没有默认值。必须先定义,赋值,最后使用
    */

    堆区:  一般由程序员分配释放,由 malloc 系列函数或 new 操作符分配的内存,其生命周期由 free 或 delete 决定。在没有释放之前一直存在,直到程序结束,由OS释放。其特点是使用灵活,空间比较大,但容易出错

    栈区: 由编译器自动分配释放,保存局部变量,栈上的内容只在函数(方法)的范围内存在,当函数运行结束,这些内容也会自动被销毁,其特点是效率高,但空间大小有限



    public class Variable {
            int x;
            public void eat() {
                System.out.println("hello");
            }
    
            public void show() {
    //            int y;
                int y = 0;
                System.out.println(x);
                System.out.println(y);
            }
    }
  • 相关阅读:
    Pyinstaller 打包exe遇到的各种问题及解决思路(详细)
    oracle存储过程和存储函数sql
    oracle sql 生成序列
    Python模块与包
    Python模块的使用
    Pyuthon类与对象练习扩展
    Python sys模块
    Python函数
    Python文件操作
    Python常用函数
  • 原文地址:https://www.cnblogs.com/longesang/p/10974355.html
Copyright © 2020-2023  润新知