Java中的静态变量在程序中的一些疑问

Java程序含有静态变量,已经定义并赋值好,块中的整形变量前面没有加int,输出的静态变量结果为什么是块中赋予的值?
static int age=22;
static final float pi=3.1415926F;
public static void main(String[] args) {
final int number;
number=12345;
int age=47;
System.out.println("常量pi的值为:"+pi);
System.out.println("赋值后number的值为:"+number);
System.out.println("int型变量age的值为:"+age);
System.out.println("int型变量age的静态值为:"+TextF.age);

    块中没有int,输出的age是47,有int。输出的是22

1个回答

不可能 你在运行试试 不管有没有int输出都是47 单纯的赋值而已 没int age是同一个对象 有int 是不同对象 输出对象不一样 不过都是47才对

monster0angle
monster0angle 回复cuckoochun: 常量pi的值为:3.1415925 赋值后number的值为:12345 int型变量age的值为:47 int型变量age的静态值为:47(这是没有int的运行结果)
3 年多之前 回复
monster0angle
monster0angle 回复cuckoochun: 常量pi的值为:3.1415925 赋值后number的值为:12345 int型变量age的值为:47 int型变量age的静态值为:22(这是有int的运行结果)
3 年多之前 回复
monster0angle
monster0angle 常量pi的值为:3.1415925 赋值后number的值为:12345 int型变量age的值为:47 int型变量age的静态值为:22
3 年多之前 回复
cuckoochun
cuckoochun 回复monster0angle: 我运行了你的代码 输出都是47
3 年多之前 回复
monster0angle
monster0angle 问题描述就是刚才那样的,没有错,刚才我查了一下,会不会是因为数据存储空间不同引起的:没有int时,块中数据的存储空间与静态变量存储空间不一致,有int是,才表明它与静态变量存储空间一致
3 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐