答案:就是为了方便,直观的表示一些东西。就说java.lang.Float,里面有以下常量:
public static final float | MAX_VALUE | 3.4028234663852886E38f |
public static final float | MIN_VALUE | 1.401298464324817E-45f |
public static final float | NaN | 0f/0f |
public static final float | NEGATIVE_INFINITY | -1f/0f |
public static final float | POSITIVE_INFINITY | 1f/0f |
public static final int | SIZE | 32 |
根据我自己的理解,有这么几个作用:
1、将没有人类语言意义的值转换易做图类能看懂的变量名。例如:Color 类中就有很多常量,如果说 1表示红,2表示绿,3表示蓝。。。那是记不住那么多种颜色的。要是使用 RED、GREEN、BLUE 那显然就好记多了。
2、统一和标准化。如果一个类可以以不同的状态出现,那么就需要一个“量”来告诉它要以什么状态呈现,那么这个时候使用自身带的参数无疑是最好了,一方面限定了选择的范围,另一方面它不用告诉外界这
里使用的具体是什么值。
3、方便类以后的扩展。如 Color 类一开始就是约定了 1表示红、2表示绿这样的方式,后来又发现用 0表示红,1表示绿更合理(这里只是打个比方),那也无法改成这种合理的做法了,因为很多人都已经使用了 1来表示红,如果 JDK 里面改变了,别人使用新版本的 JDK 之后,就会发现原来红色的地方全变成绿色的了。但如果原来是使用常量 RED=1,那么现在只需要改成 RED=0 ,就可以,因为除了这个地方,其它地方出现的都是“RED”,全都跟着变了。
这是我的拙见,希望有助你释疑。
晕! 常量一般都是死值 ,不变的值,比如 男 女, 汇率,圆周率 等 ,在运算当中不可改变的值