java 枚举元素_Java枚举元素是否带有空格?

小编典典

您不能在标识符中间放置空格。

这样做结束了标识符,并且解析器假定接下来要执行的操作是该语句上下文中的有效令牌。很少(如果有)合法的地方。

常规的Java值名称为:

INDIA, // Or India,

RUSSIA, // Russia,

NORTH_AMERICA; // NorthAmerica;

一个enum可以具有相关属性,如人类可读的名称,例如,

public enum CountryAndOneContinent {

INDIA("India"),

RUSSIA("Russia"),

NORTH_AMERICA("North America");

private String displayName;

CountryAndOneContinent(String displayName) {

this.displayName = displayName;

}

public String displayName() { return displayName; }

// Optionally and/or additionally, toString.

@Override public String toString() { return displayName; }

}

我对toString用于提供表示层表示形式有矛盾。

我更喜欢方法明确地传达其目的-更具表现力和明显性。

toString是非常通用的,并且只允许一个表示。根据上下文,参数等,可能需要多种输出格式,这toString是不允许的。

toString包括在对象上使用默认字符串操作的优点,在这种情况下,valueOf包括直接将人类可读的版本转换为枚举值。

2020-09-18

Java 中,动态类加载是指在程序运行时动态地加载类,而不是在编译时加载。这种方式可以使程序更加灵活,可以根据不同的需求加载不同的类。 Java 中的枚举Enum)也可以通过动态类加载的方式来实现。枚举是一种特殊的类,可以包含常量、方法和字段。在 Java 中,枚举常量是在编译时确定的,但是可以通过动态类加载来动态地加载枚举类。 下面是一个动态加载枚举的示例代码: ```java import java.lang.reflect.Method; import java.net.URL; import java.net.URLClassLoader; public class DynamicEnumLoader { public static void main(String[] args) throws Exception { // 枚举类的路径 URL url = new URL("file:/path/to/enum/classes"); // 创建类加载器 URLClassLoader classLoader = new URLClassLoader(new URL[]{url}); // 加载枚举类 Class<?> enumClass = classLoader.loadClass("com.example.MyEnum"); // 获取枚举常量 Object[] enumConstants = enumClass.getEnumConstants(); // 调用枚举方法 Method method = enumClass.getMethod("getValue"); for (Object obj : enumConstants) { String value = (String) method.invoke(obj); System.out.println(value); } } } ``` 在上面的示例中,我们创建了一个 URLClassLoader 对象,将枚举类的路径传入其中。然后使用该类加载器加载了 MyEnum 枚举类。最后,通过反射的方式调用了 getValue 方法,获取枚举常量的值。 需要注意的是,动态加载的枚举类必须要和程序的类在同一个类加载器中,否则会出现 ClassCastException 异常。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值