用于对象的Java方法投射可能性

时间:2011-11-11 04:48:39

标签: java class casting

是否可以检查给定的Object项是否可以转换为某个类?有没有什么方法不会抛出异常?

1 个答案:

答案 0 :(得分:4)

是,Class.isInstance(Object)和相关的Class.isAssignableFrom(Class)

示例:

Object x = "foo";
Integer.class.isInstance(x); // => false
Integer.class.isAssignableFrom(x.getClass()); // => false

编辑:您说“方法”所以我认为您的意思是API方法,但如果您在编译时知道类型,那么您可以简单地使用

x instanceof Integer // => false

(另见What is the 'instanceof' operator used for?