gpt4 book ai didi

java - 我应该在这里使用枚举吗?

转载 作者:行者123 更新时间:2023-11-29 06:05:34 26 4
gpt4 key购买 nike

我有一个名为 ColorConstants 的类,它只是一个类,它定义了我的整个应用程序中使用的许多 public static final Color 字段 - 使更改配色方案变得容易等等 我想做的是有两种方案:倒置的,不倒置的。我想设置此类,以便根据方案/主题,相同的字段名称可以引用不同的颜色。而不是每次都检查/获取必要的颜色。

我以前从未使用过 enum,只是想知道它是否适合这个?或者,我只是将字段设置为非最终字段并使用 setAll(int theme) 方法。

最佳答案

我不会在这里使用枚举。

我会创建一个包含所有颜色字段(非最终)但没有值的类。并创建在构造函数中定义所有颜色的扩展类。

public abstract class ColorScheme
{
public Color background;
public Color foreground;
public Color cursor;

}

现在创建 ColorScheme 的实现:

public class DarkColorScheme extends ColorScheme
{
public DarkColorScheme()
{
background = new Color(0x111111);
foreground = new Color(0xDDDDDD);
cursor = new Color(0xEEEEEE);
}
}

现在,您可以像这样使用您的配色方案:

public ColorScheme colorScheme = new DarkColorScheme();

从现在开始,您可以创建额外的配色方案,只需在新配色方案上方的行中使用,一切都应该动态工作。

关于java - 我应该在这里使用枚举吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8639961/

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