黑马程序员技术交流社区

标题: Static修饰的静态变量可不可以被修改?并说明原因 [打印本页]

作者: zk338142    时间: 2015-7-31 18:38
标题: Static修饰的静态变量可不可以被修改?并说明原因
之前就问过这个问题。有人说可以修改,有说不可以修改?到底是修改还是不能被修改呢,说明原因?如果不能被修改,和final关键字修饰,有什么区别吗?
作者: 耀阳圣尊    时间: 2015-7-31 19:20
可以被改变。
静态全局变量有以下特点: 该变量在全局数据区分配内存; 未经初始化的静态全局变量会被程序自动初始化为0(自动变量的值是随机的,除非它被显式初始化); 静态全局变量在声明它的整个文件都是可见的,而在文件之外是不可见的;
作者: lizf2010    时间: 2015-7-31 19:50
学习了。
作者: 何琼飞    时间: 2015-7-31 20:01
final的话是只要初始化就不能更改
作者: 亦如梦幻泡影    时间: 2015-7-31 22:31
static修饰的静态变量可以被修改啊,只是静态变量在内存中只加载一次,一个对象对它修改后再次使用是就是修改后的值,不再是之前初始化的值,final修饰的变量确切的说是不能被重新赋值,相当于是一个常量
作者: 虚心的小菜    时间: 2015-8-3 10:04
受教了 赞赞赞
作者: 晨曦遇晓    时间: 2015-8-3 10:10
记得好像是被final修饰的变量不能修改吧
作者: yuanyuemao88    时间: 2015-8-3 10:16
  学习了
作者: kenfans    时间: 2015-8-3 12:03
static修饰的可以被类名调用,也可以修改,final修饰的才不能修改。说static不能被修改貌似是C的特性,Java中是可以修改static的
作者: yongaidongbing    时间: 2015-8-3 12:25
学习到了
作者: wzg76777    时间: 2015-8-3 12:33
受教了,我也一直没怎么明白
作者: 15225159271    时间: 2015-8-3 12:57
可以被修改,只有final修饰的不可以改,因为是常量




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