user1578363
问问题
292 次
4 回答
7
于 2012-10-30T10:27:56.760 回答
1
那么我的建议是为常量创建一个类。不是接口,如果接口没有方法,那么它就没有达到它的目的。
在接口中放置常量在 Java 早期是一种流行的技术,但现在许多人认为这是对接口的一种反感,因为接口应该处理对象提供的服务,而不是对象的数据。同样,类使用的常量通常是实现细节,但将它们放在接口中会将它们提升为类的公共 API。
看看这里。
于 2012-10-30T10:28:50.757 回答
0
您应该避免在接口中使用此类常量。您可以采用 Sean Patrick Floyd 提出的解决方案。或者使用枚举类型作为常量。
public enum Constants {
NAME("Name");
private final String constant;
private Constats(String constat) {
this.constant = constant;
}
public String constant(){
return this.constat;
}
}
当您的代码需要它们时,您应该使用枚举类型。然后你将在你的代码中有顺序。
于 2012-10-30T10:33:21.540 回答
0
-首先一口气回答你的问题......是的,它可能,事实上,如果你使用
public int x=5;
或者
int x=5
,
这将始终被解释为 public static final int x=5;
-但这不是正确的方法。
-你可以更好地使用Enum
或Class with Private Constructor
处理这个。
例如:
具有静态字段的类:
public class Test{
public final String NAME = "Name";
private Test(){}
}
}
于 2012-10-30T10:45:08.083 回答