我正在抓取Exception
并尝试检查getCause()
,如果cause
属于MyException
,则会执行一些进一步的操作,在另一个库中定义
尝试检查e.getCause() instanceof MyException
时是否收到此Eclipse(编译器?)错误:
不兼容的条件操作数类型Throwable和MyException
尝试投射(MyException) e.getCause()
时,我得到:
无法从Throwable转换为MyException
我可以编译e.getCause().getClass().equals(MyException.class)
,这确实会返回true
。
答案 0 :(得分:3)
解决方案是MyException
继承自外部库中的Exception
,但顶级项目不包含该外部库。我在创建private class
extend
ed MyException
并且出现不一致的类型层次结构错误时发现了这一点。