我有两个接口都使用这两个常量
static final File UPLOAD_DIR = new File(System.getProperty("catalina.home") + File.separator + "uploads");
static final String UPLOAD_DIR_ABSOLUTE_PATH = UPLOAD_DIR.getAbsolutePath() + File.separator;
如何在不初始化两个接口的情况下访问它们?我是否创建了最顶层的接口(但这两个接口不共享任何方法)?
1条答案
按热度按时间roqulrg31#
你可以这样做:
注意,类通过多个路由继承接口的常量声明是合法的。
(在接口常量声明中是否使用修饰符是个人喜好或风格的问题。根据jls的说法,它们是隐含的
public
staticfinal
; 见jls 9.3。)但仅仅因为你能做某事并不意味着你就应该做。有些人认为声明一个仅由常量组成的接口是反模式。
请阅读以下内容,并做出自己的决定:
维基百科:常量接口
为什么不鼓励使用常量接口模式
恒定界面反模式澄清