在实现此接口的类中引用接口常量的最佳实践是什么?

时间:2018-01-27 10:07:37

标签: java interface constants

接口中的任何常量都是隐式public static final。所以接口常量是一个静态字段。

如果我的班级fld中有静态字段ExampleCls,那么是从任何方法(包括实例和静态)引用此静态字段fld的最佳做法我的常规ExampleCls通过限定名称:ExampleCls.fld - 区分使用静态字段和使用实例字段。

因此,如果类MyCls implements Iface(某些与int MY_CONST=1的接口),则MyCls继承此静态MY_CONST,**我应如何从{{1的实例和静态方法中引用MY_CONST }}?

  1. 就像MY_CONST一样?
  2. Iface.MY_CONST?
  3. MyCls.MY_CONST?
  4. 最受欢迎的做法是什么?关于这个问题是否有任何不同的意见,或者普遍接受共识?

1 个答案:

答案 0 :(得分:2)

简单回答:不要。

我认为Java的所有当前编码约定都建议常量放入接口。将它们放入课堂,但不要使用界面绕道而行。

除此之外:如果你的环境"仍然使用接口常量,然后使用最适合的内容。换句话说:与参与此代码库的人员坐下来,并就共同的编码约定达成一致。

这里没有真正迫切的技术原因。这仅仅是"样式"。在这种情况下,如上所述,你只需选择"什么有效"对你而言。