gpt4 book ai didi

java - 在 Java 中使用大写字母在 main 之外定义 Scanner 类型的常量是一个好习惯吗

转载 作者:行者123 更新时间:2023-12-01 10:06:34 24 4
gpt4 key购买 nike

我刚刚开始学习Java。我的教科书说,在 main 之外定义常量是一种很好的做法,因此我不会无意中更改它们,并且使用大写字母。定义扫描仪(java.util.Scanner)以从键盘获取输入的典型方法是:

public static Scanner keyboard = new Scanner(System.in);

在主程序内部。

我想扫描仪在程序运行时通常不会改变,所以它通常是一个常量。在 main 之外用大写字母定义常量 Scanners 是否被认为是好的做法,因此前几行会是这样的?:

package test;
import java.util.Scanner;

public class Test_class_2{
public static Scanner KEYBOARD = new Scanner(System.in);
public static void main(String[] args) {

最佳答案

这不是一个好的做法,因为它是可变的。

只有不可变常量才应该在顶部大写字母中声明,并且还应该添加 final 关键字,这意味着该值不能更改。像这样的东西:

static final String CONSTANT_NAME = "CONSTANT_VALUE" ;

这是对 java 中可变和不可变值的很好解释。

Mutable objects can have their fields changed after construction. Immutable objects cannot. Immutable objects are simply objects whose state (the object's data) cannot change after construction

关于java - 在 Java 中使用大写字母在 main 之外定义 Scanner 类型的常量是一个好习惯吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36411507/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com