Interface Vs Final类存储最终变量

时间:2013-05-03 07:41:39

标签: java interface final

我有class,其中只包含final个变量。 E.g:

public class Constants
{
    public static final String PREFIX = "some prefix";
    public static final String SUFFIX = "some suffix";
    //and so on...
}

此处推荐使用哪种类型 - interfacefinal class

4 个答案:

答案 0 :(得分:0)

你应该使用Final Class。

答案 1 :(得分:0)

如果您要创建一个仅包含全局可访问的最终常量的类,则应使用enum

答案 2 :(得分:0)

接口用于定义合同。在复制粘贴的代码中,应在最终类中定义这些常量。查看What is the best way to implement constants in Java?

答案 3 :(得分:0)

您放置它的全局常量实际上应该在属性文件中,因为它允许每个应用程序单独配置它们而无需修改代码。对于特定于对象的常量,我对Enumstatic final的一般经验法则通常倾向于有多少元素以及这些元素的相关性。如果它们之间存在很大的关系,例如Suits中的Cards,那么我会选择枚举。如果它是用户的默认年龄,那么这将成为最终版本,因为没有目的使其成为枚举,因为它不需要在许多领域中被引用。这些只是对我接触它的每种方式的一些想法。