日期:2014-05-20  浏览次数:20842 次

关于java中常量的赋值
在一国外的JAVA 书introfuction to java language 中提到:

(named constant) 定名常量,也就是final常量。常量必须在同一条语句中声明和赋值。
eg. 
final double PI = 3.1415927;

但是我把声明和赋值分开写,编译器似乎也能通过.
eg.
final double PI;
PI = 3.1415927;

我想问的是,是否有这样的语法规定,或者说,在之前的java版本中有这样的规定吗?

------解决方案--------------------
在方法体内这样操作没问题,作为类属性就不行了。
------解决方案--------------------
final 修饰的 类成员变量 必须在申明时或构造方法里初始化。

final修饰的不一定就是常量。
如: 
final StringBuilder sb = new StringBuilder(200);