黑马程序员技术交流社区

标题: 关于两个变量之间的关系 [打印本页]

作者: 张峰    时间: 2011-11-24 22:58
标题: 关于两个变量之间的关系
本帖最后由 张峰 于 2011-11-30 13:14 编辑

全局变量和成员变量之间有什么区别?
作者: 强子    时间: 2011-11-24 23:06
差点看成  全局变量与局部变量······
在java中  据我所知  全局变量  和   成员变量是一样的
作者: 李龙龙    时间: 2011-11-24 23:42
全局变量是在所有函数之外声明的变量,局部变量则是在函数体内声明的变量。全局变量放在内存的全程数据区,局部变量在栈上申请。全局数据区分为两部分全局数据区和静态数据区,静态数据区专门存放static变量。static的全局变量只在该文件范围内可见,不能用extern声明为外部变量。
编译器会自动初始化全局变量。
局部变量,是具有块作用域的。如果把数据存储在局部变量里,函数在不同的块之间只能通过参数传递来共享数据。
生存周期不同 , 作用范围不同 , 分配方式不同 ,安全感不同 , 用途不同!
全局变量在程序运行期间长驻内存,直到程序运行结束, 局部变量   动态分配内存,尽量少用全局变量
作者: 袁世宇    时间: 2011-11-24 23:48
本帖最后由 袁世宇 于 2011-11-24 23:52 编辑

全局变量和成员变量就是只一个
如果你定义了全局变量或成员变量 就说明这个在这个类里都可以调用全局变量或这个成员变量
而局部变量只是在一个方法里使用或类里的其他{}代码块里,出了这个方法以后没人认识他了
作者: 冯敏    时间: 2011-11-25 00:08
在JAVA里全局变量和成员变量是一个意思,只不过是叫法不同罢了
作者: 侯伟浩    时间: 2011-11-25 08:57
  1. public class Student{
  2.         private String name; //全局变量也叫成员变量
  3.         private Integer age;
  4.         private float score;
  5.         public Student(String name,Integer age,float score)
  6.         {
  7.                 this.age=age;
  8.                 this.name=name;
  9.                 this.score=score;
  10.         }
  11.         public String getName() {
  12.                 return name;
  13.         }
  14.         public void setName(String name) {
  15.                 this.name = name;
  16.         }
  17.         public Integer getAge() {
  18.                 return age;
  19.         }
  20.         public void setAge(Integer age) {
  21.                 this.age = age;
  22.         }
  23.         public float getScore() {
  24.                 return score;
  25.         }
  26.         public void setScore(float score) {
  27.                 this.score = score;
  28.         }
复制代码
在类的内部,方法的外部声明的变量叫做成员变量也叫全局变量。如以上代码中的name,age,score属性。
作者: wanghongye    时间: 2011-11-27 18:53
public class Test {
   private String name;//成员变量,也是全局变量

   public void changeName() {
       String n = "tomoya";//n就是局部变量
       name = n;
   }
}

总的来说,定义在类里的,也就是name那个位置,就是成员变量,在JAVA里全局变量和成员变量是一个意思。
定义在方法里或域里就叫做局部变量,所谓域就是{}里面




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