创建实用程序以将对象转换为 java 中的 bean
create utility to cast objects to beans in java
我正在开发一个助手 class 以将 class 实例和对象传递给(对象通常是 JSON 主体)并且在使用时无法完全进行转换通用 Class。如果它确实 return class,它会说我的 bean 无法转换为 Java.lang.Class,或者我遇到转换异常的以下问题。正确的做法是什么?
public static Class castClass(Object o, Class c) {
try {
c = (Class) o;
return c;
} catch (Exception e) {
e.getMessage();
}
return null;
}
您正在尝试将对象转换为 Class
,但我敢打赌您打算将对象转换为 c
代表 的类型。
如果是这样,您应该使用 Class.cast
。例如:
Class<String> c = String.class;
String s = c.cast(o);
如果你想 return null
万一它是错误的 class (就像你在你的辅助方法中所做的那样)你会做如下:
public static <T> T castClass(Object o, Class<T> c) {
try {
return c.cast(o);
} catch (ClassCastException e) {
e.getMessage();
}
return null;
}
我正在开发一个助手 class 以将 class 实例和对象传递给(对象通常是 JSON 主体)并且在使用时无法完全进行转换通用 Class。如果它确实 return class,它会说我的 bean 无法转换为 Java.lang.Class,或者我遇到转换异常的以下问题。正确的做法是什么?
public static Class castClass(Object o, Class c) {
try {
c = (Class) o;
return c;
} catch (Exception e) {
e.getMessage();
}
return null;
}
您正在尝试将对象转换为 Class
,但我敢打赌您打算将对象转换为 c
代表 的类型。
如果是这样,您应该使用 Class.cast
。例如:
Class<String> c = String.class;
String s = c.cast(o);
如果你想 return null
万一它是错误的 class (就像你在你的辅助方法中所做的那样)你会做如下:
public static <T> T castClass(Object o, Class<T> c) {
try {
return c.cast(o);
} catch (ClassCastException e) {
e.getMessage();
}
return null;
}