黑马程序员技术交流社区

标题: 关于成员变量和局部变量以及成员变量和静态成员变量的区别 [打印本页]

作者: 大龄男青年    时间: 2016-6-7 16:37
标题: 关于成员变量和局部变量以及成员变量和静态成员变量的区别
成员变量与局部变量的区别:
        定义位置
                成员变量在类中方法外, 局部变量在方法中及方法的声明上
        存储位置
                成员变量存储在堆内存(属于对象)
                局部变量存储在栈内存(属于方法)
        生命周期
                成员变量随着对象的创建而存在, 随着对象的销毁而消失
                局部变量随着方法的调用而存在, 随着方法的结束而消失
        初始化值
                成员变量有默认的初始化值, 引用数据类型的默认初始化值是null, 基本数据类型的整形是0
                局部变量没有默认的初始化值, 需要手动赋值
静态变量与成员变量的区别:
                所属:
                        静态变量属于类, 成员变量属于对象
                存储位置:
                        静态变量存储于方法区中的静态区, 成员变量存储在堆内存
                生命周期:
                        静态变量生命周期长于成员变量
                        静态变量随着类的加载而存在, 随着类的消失而消失
                        成员变量随着对象的创建而存在, 随着对象的消失而消失
                调用方式:
                        静态变量可以直接通过类名调用, 还可以通过对象名调用
                        成员变量只能通过对象名调用




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2