书中有这样一段代码:public class part{static final double PI=3.14;static int age=23;public static void main (String[] args){final int number;number=1235;age=22;System.out.println("常量PI的值为:" + PI);System.out.println("赋值后number的值为:"+number);System.out.println("int型变量age的值为:" + age);}}我有几个地方不明白:1:static final double PI=3.14;static int age=23;中的static 有什么作用?2:是不是声常量必须要加final,声名变量就不能加?final指的是什么意思?3:最后输出的结果“int型变量age的值为:22”为什么不是23?有没有哪位朋友能帮忙指点一下。谢谢了!!
3 回答
一只萌萌小番薯
TA贡献1795条经验 获得超7个赞
如果想要输出age=23,那么需要把age属性定义为常量,即修改为static final int age=23,但是由于final的特性(修饰类,表示是最终类,不能再被继承;修饰方法,表示是最终方法,不能被重写;修饰属性,表示是最终属性,不能被修改),所以一旦把age属性定义为”最终属性“(final修饰),则不能再有age=22这行,按照以上的描述修改之后,输出的就是23了。
添加回答
举报
0/150
提交
取消