zoukankan      html  css  js  c++  java
  • 变量(成员变量、局部变量)、堆栈

    1、成员变量和局部变量的不同点:

    (1)位置不同

    成员变量:在类中,方法外

    局部变量:方法中

    (2)作用域不同

    成员变量:整个类

    局部变量:方法或语句内

    (3)默认值不同

    成员变量:有默认值(不赋初值不会报错)

    局部变量:无默认值,赋值后才能使用(不赋初值会报错)

    (4)内存位置不同

    成员变量:堆内存

    局部变量:栈内存

    (5)生命周期不同

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

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

    public class Demo1 {
        private int age;//成员变量
        public int getAge() {
            return age;
        }
    
        public void setAge(int age) {
            this.age = age;
        }
        public void test(){
            int num=1;//局部变量
            System.out.println(num);
        }
        public static void main(String[] args){
            Demo1 demo1=new Demo1();
            demo1.test();
        }
    }

     2、堆栈:java将内存划分为两种:堆内存和栈内存

    (1)堆内存:堆内存用来存放由new创建的对象和数组。堆中的对象的由垃圾回收器负责回收,因此大小和生命周期不需要确定,具有很大的灵活性。

    (2)栈内存:所有的方法运行的时候进入的内存,当没有调用时就被回收,缺乏灵活性。

  • 相关阅读:
    007_2 (变式)青蛙跳台阶
    008 二进制中1的个数
    009 数值的整数次方
    007_1 斐波那契数列的非递归解法
    Linux TTY函数跟踪
    Linux UART介绍
    Linux TTY介绍
    Linux音频编程
    Jasper语音助理
    Raspberry Pi使用
  • 原文地址:https://www.cnblogs.com/zhai1997/p/11265355.html
Copyright © 2011-2022 走看看