gpt4 book ai didi

Java 常量定义样式

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:54:35 25 4
gpt4 key购买 nike

样式 1

public interface Constants{
String FOO = "foo",
BAR = "bar",
... ;
}

风格 2

public interface Constants{
String FOO = "foo";
String BAR = "bar";
...
}

我曾经在一个接口(interface)中声明所有常量。我遵循样式 1,因为它更具可读性。我想知道除了可读性之外,这两种风格之间是否有任何区别。这两种风格有什么性能相关的东西吗?

注意 :我从未实现过 Constant 接口(interface),而是访问了那些常量,例如常量.FOO

例子:

public class Main{

public static void main(String[] args){

...
System.out.println(Constants.FOO);
...

}

}

哪个更好,为什么?

最佳答案

I am following style 1 because it's more readable.

考虑以下情况,

 private static final String FOO1="foo1", FOO2="foo2", FOO3="foo3",BAR="bar"...//and so on

现在这实际上比检查以下内容更不可读,

private static final String FOO1 ="foo1";
private static final String FOO2 ="foo2";
private static final String FOO3 ="foo3";//and so on

现在考虑上面代码的可读性,

constant FOO1 ="foo1";
constant FOO2 ="foo2";
constant FOO3 ="foo3";//and so on

constant FOO1 = "foo1",  FOO2 = "foo2", FOO3 = "foo3";

在阅读第二篇时,您可能会忽略 FOO3 也是常量这一点,而在第一种情况下,FOO3 是常量对于任何人来说都是非常明显的。此外,在这两种情况下,内存或执行方面没有差异。

如果您专门为常量创建 interface,那么您没有使用 interface 的目的是在 Java 中。接口(interface)应该包含实现类必须同意的一些契约。使用接口(interface)来仅包含常量是不愉快的

关于Java 常量定义样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32156430/

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