Tag: 常量

常量实用程序类中的最终关键字

在使用具有常量实用程序类的final关键字时,我们可以获得性能和/或任何其他好处的任何差异。 [此类仅包含静态最终字段和私有构造函数以避免对象创建] public class ActionConstants { private ActionConstants() // Prevents instantiation { } public static final String VALIDFIRSTLASTNAME = “[A-Za-z0-9.\\s]+”; public static final String VALIDPHONENUMBER = “\\d{10}”; … … } 只有差异才是最终的阶级 public final class ActionConstants { private ActionConstants() // Prevents instantiation { } public static final String VALIDFIRSTLASTNAME = “[A-Za-z0-9.\\s]+”; public static final String VALIDPHONENUMBER […]

为什么不建议将常量存储在单独的类中?

有人告诉我(我在其他一些地方已经看到过这种说法),不建议将常量存储在Java中的单独类中,以便在其他类中使用它们。 但我没有看到任何地方为什么这样。 我不应该将它们存储在自己的接口/类中的原因是什么? 我来自C到Java,在C中,我只创建一个.h文件,用#define定义常量

在已编译的类中更改字符串常量

我需要在已部署的Java程序中更改字符串常量,即编译的.class -files中的值。 它可以重新启动,但不容易重新编译(虽然如果这个问题没有答案,这是一个不方便的选择)。 这可能吗? 更新:我只是用hex编辑器查看了文件,看起来我可以轻松地在那里更改字符串。 这会起作用,即不会使文件的某种签名无效吗? 旧字符串和新字符串都是字母数字,如果需要,可以是相同的长度。 更新2:我修复了它。 因为我需要更改的特定类非常小并且在新版本的项目中没有更改,所以我可以编译它并从那里获取新类。 出于教育目的,仍然对不涉及编译的答案感兴趣。

Java – 包含数组字段的枚举

我想将每个名称的列表名称和单个昵称存储为Java中的Enum。 昵称的数量不会有所不同。 目的是能够从昵称中获取全名。 目前我已经实现了这样: public enum Names { ELIZABETH(new String[] {“Liz”,”Bet”}), … ; private String[] nicknames; private Names(String[] nicknames) { this.nicknames = nicknames } public Names getNameFromNickname(String nickname) { //Obvious how this works } } 我不喜欢不得不重复new String[] {…} ,所以我想知道是否有人可以建议一种替代的,更简洁的实现方法? 干杯, 皮特

字符串常量与Java Web应用程序中的资源包

从过去的一年开始,我们开发了一个应用程序,我们使用静态字符串常量来存储常量。 像public static final String PAYMENT_CHEQUE =“check”; 我在哪里要求ie在jsp页面中以及Action类我将引用上面的字符串常量我在考虑资源包之后想到的属性文件,我的问题是 如果我使用属性文件与静态字符串常量相比,是否有任何性能损失? 哪个更好的静态字符串常量和属性文件键值对? 这是个好主意我们在jsp中使用静态字符串常量(For Labeling)吗? 请建议我

您对方法范围常量有何看法?

例如: public void doSomething() { final double MIN_INTEREST = 0.0; // … } 就个人而言,我宁愿看到这些替换常量在类级别静态声明。 我想我正在寻找关于这个问题的“行业观点”。

为什么Java类库仍然使用String常量代替枚举

我正在使用一些Java类,如javax.Mail.Session和MessageDigest用于我正在构建的工具。 我注意到很难为它们分配属性,因为它们正在使用String常量。 例如,对于Session对象,您必须在Property实例中分配String键值对,然后用于创建Session 。 因此,如果您希望会话记录调试消息,请在Property实例中指定”smtp.mail.debug” , “true” 。 同样,如果您希望MessageDigest使用SHA ,请将MessageDigest实例创建为MessageDigest.getInstance(“SHA”) 如果我想使用MD5 / RC4等实现MessageDigest ,或者向Session对象添加另一个属性,我还没弄清楚要做什么以及从哪里获取信息。 如果公共枚举被这些各自的类公开以分配属性,那会不会更好? 至少可以为程序员节省大量的搜索时间。

java中的常量变量和最终变量之间有什么区别?

请帮助我理解Java中常量变量和final变量之间的区别。 我有点困惑。

Guice:Binder#bindConstant()和Binder#bind()… toInstance之间的区别

我想问一下有什么区别 bindConstant().annotatedWith(Names.named(“keepAliveInterval”)).to(60); 和 bind(Integer.TYPE).annotatedWith(Names.named(“keepAliveInterval”)).toInstance(60); 我想用Names.bindProperties(binder(),prop)加载我的所有配置属性; 在我的模块中,我发现它使用后者来绑定属性。 感谢和问候 马雷克

在scala注释中使用常量的最佳实践

我使用tapestry 5作为我选择的Web框架。 Tapestry允许我在configure类中定义符号并将符号注入其他组件。 例如, 公共接口SymbolConstants { static String DEFAULT_TIMEOUT_KEY =“default.timeout”; } 公共类AppModule { void contributionApplicationDefault(Configuration conf){ conf.add(SymbolConstants.DEFAULT_TIMEOUT_KEY,“10”); } } 公共类MyComponent { @Symbol(SymbolConstants.DEFAULT_VALUE_KEY) 私人长时间超时; } 定义静态常量并将其用作注释值的能力为我提供了编译时检查。 我想知道如何定义常量并将它们用作scala注释的值。 如果不是,那么定义/限制我们可以为scala中的注释分配的值的最佳做法是什么。