当前位置: 首页 > 面试题库 >

用Java实现常量的最佳方法是什么?

韦高阳
2023-03-14
问题内容

我看过这样的例子:

public class MaxSeconds {
   public static final int MAX_SECONDS = 25;
}

并假设我可以有一个Constants类来包装常量,并声明它们为static final。我几乎不了解Java,并且想知道这是否是创建常量的最佳方法


问题答案:

这是完全可以接受的,甚至可能是标准。

(public/private) static final TYPE NAME = VALUE;

TYPE类型NAME是哪里,是所有大写字母的名称,下划线带有空格,并且VALUE是常量值;

我强烈建议不要将常量放在自己的类或接口中。

附带说明:声明为final且可变的变量仍然可以更改;但是,变量永远不能指向其他对象。

例如:

public static final Point ORIGIN = new Point(0,0);

public static void main(String[] args){

    ORIGIN.x = 3;

}

那是合法的,ORIGIN因此指向(3,0)。



 类似资料:
  • null 另外,如果使用,是否需要导入文件,或者不导入文件,常量将全局可用? 我可以从逻辑上得出一个结论,即是定义自定义错误域之类的东西时的最佳选择(我真的对吗?)。但其他人呢?

  • 问题内容: 我有一个本质上相当于嵌套字典的数据结构。假设它看起来像这样: 现在,维护和创建它非常痛苦。每当我有一个新的州/县/专业时,我都必须通过讨厌的块创建较低层的字典。此外,如果要遍历所有值,则必须创建烦人的嵌套迭代器。 我也可以使用元组作为键,例如: 这使得对值的迭代非常简单自然,但是在语法上进行诸如汇总和查看字典子集之类的操作在语法上更加痛苦(例如,如果我只是想逐个查看状态的话)。 基本上

  • 问题内容: 用增强现实录制视频的最佳方法是什么?(向iPhone / iPad相机的框架添加文字,图像徽标) 以前,我试图弄清楚如何绘制并转换回CIImage回到CMSampleBuffer中 我几乎做了所有事情,只是在使用new in 录制视频时遇到问题 但是,无论如何,这种解决方案都不是很好,它在转换为()时会占用大量CPU 因此,我想在这里停下来,找到其他方法来录制具有增强现实的视频(例如,

  • 问题内容: 我有一个用Java编写的Web应用程序(Spring,Hibernate / JPA,Struts2),用户可以在其中上传图像并将其存储在文件系统中。我想缩放这些图像,以使它们具有一致的大小,以便在网站上显示。哪些库或内置函数将提供最佳结果?在做出决定时,我将考虑以下标准: 免费/开源(基本) 易于实施 结果质量 性能 可执行文件的大小 问题答案: 看一下Java Image I /

  • 我有一个超时执行任务的方法。我使用ExecutorServer.submit()获取一个Future对象,然后调用future.get()并超时。这很好,但是我的问题是处理我的任务可能抛出的检查异常的最好方法。下面的代码工作正常,并且保留了被检查的异常,但是如果方法签名中被检查的异常的列表改变了,它看起来非常笨拙并且容易出错。 关于如何解决这个问题的任何建议?我需要以Java 5为目标,但我也很好

  • 问题内容: 目前,我正在使用类似: 我对这种方法不是很满意,因为它会创建大量数组(可以包含一本书)。 有没有更好的解决方案来迭代a的行? 问题答案: 您可以使用: 并使用方法: