如上所述,在接口中可以声明变量,但变量是隐式声明为public,static和final的.初看时,你可能认为这些变量的应用非常有限,但事实恰恰相反.大型程序通常利用几个常量值来描述数组的大小,各种限制,特殊值等.由于大型程序通常情况下是由许多独立的源文件组成的,这就需要一种方便的方法使得这些常量对每一个文件都可用.在Java中,接口变量提供了一种解决办法.
要想定义一组共享的常量,可以创建一个仅仅包含这些常量的接口,不包含任何方法.需要访问这些常量的文件只需实现该接接口即可.这样就可以使用接口中的这些常量了,下面是一个简单的例子:
public interface Series { int MIN = 0; int MAX = 10; int getNext(); void reset(); void setStart(int x); } public class test2 { // @param args public static void main(String args[]) { two ob = new two(); System.out.println(ob.MAX); } } class two implements Series { public int getNext() { return 1; } public void reset() { } public void setStart(int x) { } }
注意:使用接口定义共享常量的技术是颇有争议的,在此介绍他只是为了保证完整性.