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

如何在Java中声明常量

闾丘卓
2023-03-14
问题内容

我们总是写:

public static final int A = 0;

题:

  1. 是在类中static final声明 常量 的唯一方法吗?
  2. 如果我改写的话public final int A = 0;,它A还是一个 常量 还是一个 实例字段
  3. 什么是 实例变量实例变量实例字段有 什么区别?

问题答案:
  1. 您可以enum在Java 5及更高版本中使用一种类型,以达到您描述的目的。这是类型安全的。
  2. A是一个实例变量。(如果它具有static修饰符,则它将成为一个静态变量。)常量仅表示该值不变。
  3. 实例变量是属于对象而不是类的数据成员。实例变量=实例字段。

如果您要谈论实例变量和类变量之间的区别,则每个创建的对象都存在实例变量。尽管类变量每个类加载器只有一个副本,而不管创建的对象数量如何。

Java 5的和最多 enum

public enum Color{
 RED("Red"), GREEN("Green");

 private Color(String color){
    this.color = color;
  }

  private String color;

  public String getColor(){
    return this.color;
  }

  public String toString(){
    return this.color;
  }
}

如果要更改已创建的枚举的值,请提供一个mutator方法。

public enum Color{
 RED("Red"), GREEN("Green");

 private Color(String color){
    this.color = color;
  }

  private String color;

  public String getColor(){
    return this.color;
  }

  public void setColor(String color){
    this.color = color;
  }

  public String toString(){
    return this.color;
  }
}

访问示例

public static void main(String args[]){
  System.out.println(Color.RED.getColor());

  // or

  System.out.println(Color.GREEN);
}


 类似资料:
  • 在Java类中,我通常在单个常量文件中声明我的所有常量,并跨项目访问 如何在Kotlin中实现相同 Java代码:

  • 问题内容: 我试图在Go中声明为constant,但是它抛出一个错误。有人可以在Go中声明常量的语法帮助我吗? 这是我的代码: 这是错误 问题答案: 您的语法不正确。要制作文字映射(作为伪常量),可以执行以下操作: 在a中,您可以这样声明: 在Go中,没有常量映射之类的东西。可以在 此处 找到更多信息。 在Go游乐场尝试一下。

  • 问题内容: 如何在mysql中声明变量,以便第二个查询可以使用它? 我想写一些像: 问题答案: MySQL中主要有三种类型的变量: 用户定义的变量 (以开头): 您可以访问任何用户定义的变量,而无需对其进行声明或初始化。如果引用的变量尚未初始化,则其值为和字符串类型。 您可以使用或语句来初始化变量: 要么 可以从一组有限的数据类型中为用户变量分配一个值:整数,十进制,浮点数,二进制或非二进制字符串

  • 问题内容: 我有一个Netezza查询,在其中我引用了一系列案例陈述中的几个日期。而不是每次我都想在开始时将一个变量置为一个变量并在整个查询中都使用它时,而不是替换所有这些日期。在SAS中,我会这样做: 问题答案: 不幸的是,Netezza中没有程序SQL扩展,您无法将这样的变量用作SQL语言本身的一部分。纯粹的SQL解决方案将涉及一些麻烦,例如加入CTE并返回该值。但是,NZSQL CLI确实允

  • 问题内容: 如果我在Swift中需要自定义类型,可以,该怎么办?(类似于闭包语法typedef) 问题答案: 使用关键字代替

  • 问题内容: 在中,有以下常量声明: 有什么用 区分大小写重要吗? 我知道,并且用于s,s和s,但之前从未见过。 问题答案: 的(或)表示是十六进制浮点文字,其中所述有效数在十六进制指定。 将被用来代替。您所看到的和后缀与此正交:两者和都是有效的文字(一个是type ,另一个是type )。 乍看起来,前缀似乎足以标识一个十六进制浮点文字,那么为什么Java设计人员选择将字母从更改为?这与有效的十六