Java中的常量分组

由于interface的数据成员自动就是static和final的,因此interface是一种非常方便的,创建一组常量的工具。这点同C和C++的enum很相似。注意,Java的编程风格是,用全部大写字母(用下划线分隔同一个标识符里的各个单词)来表示,用常量进行初始化的static和final变量。

Interface的数据成员自动就是public的,因此就不必再注明了。你可以想对别的package那样,用importc08.*或者c08.Months把它引进来,这样就能在这个package的外面用Months.JANUARY之类的表达式来使用这些常量了。当然,你得到的是一个int,因此它没有像C++的enum那样的类型安全,但是这种很常见手法要比直接在程序里面用数字要好得多。这种方法通常被称为使用神奇数字,并且使得代码的维护变得非常困难。

«1»