Im'尝试编写一个从Exception派生的类BrokenObjectException类。 但在Eclipse中我得到这个错误:无法从异常继承
的序列化类BrokenObjectException没有声明型长
public class BrokenObjectException extends Exception
{
BrokenObject(String message)
{
;
}
}
我不明白为什么它要求我声明场的静态最后的serialVersionUID领域。 不应该只是强制声明一些方法的接口? 无论如何,我想是因为我想抓住它娜我如何捕获所有异常不同的方式来将这个类,从我的例子,我有一个块:
try
{
if(...)
throw new Exception("wrong");
if(...)
throw new BrokenObjectException("wrong");
}
catch(BrokenObjectException e)
{
// do something (action1)
throw e;
}
catch(Exception e)
{
// so something (action2)
throw e;
}
所以在第一个catch块我已经写了“做东西”。 这是因为根据抛出异常的类型,我想执行不同的操作。 因此,由于BrokenObjectException是从Exception派生的,所以它应该被捕获两次。 但是,如果抛出BrokenObjectException,我想要做action1和action2,如果只是一个正常的异常抛出我只想做action2.Is那可能吗? 以及如何解决我收到的错误?