A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 马清泽 中级黑马   /  2012-12-6 10:06  /  2606 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

全局变量和局部变量的作用域是什么?这两者的区别?

评分

参与人数 1黑马币 +10 收起 理由
杨千里 + 10 多看看视频

查看全部评分

3 个回复

倒序浏览
局部变量指在程序中,只在特定过程或函数中可以访问的变量,是相对与全局变量而言的。全局变量也称外部变量,是在函数外部定义的,作用域为从变量定义处开始,到本程序文件的末尾。全局变量全部存放在静态存储区,在程序开始执行时给全局变量分配存储区,程序行完毕就释放。由于Java是面向对象语言,所有变量都是类成员,所以Java只有局部变量,没有全局变量。面向对象编程是现在普遍采用的软件开发方法,因此现在已无需考虑是局部还是全局变量,说到变量,往往都是局部变量。

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
全局变量是当对象一旦实例化,那么他就在对内存中存在了,在该对象被释放之前,一般来成员方法都可以访问该变量。而且全局变量在定义时如果没有给出初始值,那么虚拟机会按照变量类型给出一个初始值。重点是它存在对内存中,可以不用给初始值
而局部变量他是存在栈内存中的。当一个方法被调用,那么他就进入栈中,一旦执行完就出栈。而且局部变量在定义时必须明确给出初始值。

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1 神马都是浮云

查看全部评分

回复 使用道具 举报
变量的作用域

(Java中)



1、成员变量和局部变量

    1> 定义

       >在类中定义的变量称为类的成员变量

       >在方法中定义的变量称为局部变量

    2> 作用域

       >类的方法可以直接使用该类定义的成员变量。如果别的类的方法要访问它,必须首先创建该类的对象,然后通过点运算符来引用

       >局部变量的作用域仅仅在定义该变量的方法内,因此只有在这个方法中能够使用它

2、使用成员变量和局部变量时需要注意以下几点内容

    1> 作用域不同

    2> 初始值不同

       Java中不会给局部变量赋予初始值,因此局部变量必须要定义赋值后在使用

    3> 在同一个方法中,不允许有同名的局部变量。在不同的方法中,可以有同名的局部变量

    4> 局部变量可以和成员变量同名,并且在使用时,局部变量具有更高的优先级

评分

参与人数 1技术分 +1 收起 理由
古银平 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马