服务热线:13616026886

技术文档 欢迎使用技术文档,我们为你提供从新手到专业开发者的所有资源,你也可以通过它日益精进

位置:首页 > 技术文档 > JAVA > 新手入门 > 基础入门 > 查看文档

初始化接口中的字段


  接口中定义的字段会自动具有static和final属性。它们不能是“空白final”,但可初始化成非常数表达式。例如:
  
  //: randvals.java
  // initializing interface fields with
  // non-constant initializers
  import java.util.*;
  
  public interface randvals {
   int rint = (int)(math.random() * 10);
   long rlong = (long)(math.random() * 10);
   float rfloat = (float)(math.random() * 10);
   double rdouble = math.random() * 10;
  } ///:~
  
  由于字段是static的,所以它们会在首次装载类之后、以及首次访问任何字段之前获得初始化。下面是一个简单的测试:
  
  //: testrandvals.java
  
  public class testrandvals {
   public static void main(string[] args) {
    system.out.println(randvals.rint);
    system.out.println(randvals.rlong);
    system.out.println(randvals.rfloat);
    system.out.println(randvals.rdouble);
   }
  } ///:~
  
  当然,字段并不是接口的一部分,而是保存于那个接口的static存储区域中。

扫描关注微信公众号