zoukankan      html  css  js  c++  java
  • JAVA中局部变量 和 成员变量有哪些区别

    JAVA中局部变量 和 成员变量有哪些区别


    1.定义的位置不一样<重点>***
    局部变量:在方法的内部
    成员变量:在方法的外部,直接写在类当中

    2.作用范围不一样<重点>***
    局部变量:只有方法当中才可以使用,出了方法就不能再用
    成员变量:整个类全都可以通用。

    3.默认值不一样<重点>***
    局部变量:没有默认值,如果想要使用,必须手动进行赋值
    成员变量:如果没有赋值,会有默认值,规则和数组一样

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

    5.生命周期不一样(了解)
    局部变量:随着方法进栈而诞生,随着方法出栈而死亡。
    成员变量:随着对象创建而诞生,随着对象被垃圾回收而消失。

    public calss Demo01variableDifference{
        String name;//成员变量
    
        public void methodA(){
            int num=20;//局部变量 默认值为NULL
            System.out.println(num);
            System.out.println(name);
        }
        public void methodB(int param){
            //方法的参数就是局部变量
            System.out.println(param);//参数也是局部变量,为什么不赋值就可以输出?
            //因为参数在方法调用的时候,必然会被赋值的。不传参数就会报错。
            int age;
            //System.out.println(age);//错误写法 未赋值不能使用,必须赋值
            // System.out.println(num);//错误写法
            System.out.println(name);/
        }
    }
  • 相关阅读:
    LOJ6395 「THUPC2018」城市地铁规划 / City
    [题解] 好好
    [题解] CF1316F Battalion Strength
    【题解】CF1320D Reachable Strings
    【题解】夕张的改造
    【题解】期望次数
    [FJWC2020] lg
    Django 多表操作
    Django 单表操作
    Django 模板层 静态文件
  • 原文地址:https://www.cnblogs.com/battlecry/p/9373993.html
Copyright © 2011-2022 走看看