读书人

错误处理有关问题作业题?

发布时间: 2012-01-01 23:10:55 作者: rapoo

异常处理问题作业题??
当程序重新抛出一个新的异常时,原有异常所包含的数据也会随之丢失,例如:
try{
……
}catch(OldException e){
Throw new NewException(“new exception”);
}
此时,OldException所包含的数据会遗失,为了避免这种情况,我们可将原有的异常传入新的异常中,这称为chained exception(继承Exception),如:
Throw new NewException(“new exception”,e);
请生成ChainedException来达到这个目的。

请回答得完整一些,也就是当做作业题来解答,给个完整的答案,谢谢!

[解决办法]

Java code
package com.train.first;import java.io.IOException;public class Test{    public static void main(String[] args) throws Exception    {        try        {            try            {                if (true)                {                    throw new IOException("NEW EXCEPTION");                }            }            catch (IOException e)            {                throw new ChainedException(e);            }        }        catch (ChainedException e)        {            e.printStackTrace();        }            }}class ChainedException extends Exception{    private static final long serialVersionUID = 1L;    public ChainedException(Exception e)    {        super(e.getMessage(), e.getCause());    }} 

读书人网 >J2SE开发

热点推荐