2014-10-04 43 views
0

我已經嘗試製作一個擴展Exception並覆蓋printstacktrace的新類。現在的問題是,當它嘗試像THR以下的東西,我得到一個錯誤如何更改printStacktrace()爲Exception執行的操作?

公共類LoggerException擴展Throwable的{

private static final long serialVersionUID = 1L; 
@Override 
public void printStackTrace() { 
    // TODO Auto-generated method stub 
    super.printStackTrace(); 

    Logger logger = Logger.getLogger("custom app exception"); 
    logger.log(Level.WARNING,getMessage(),this); 

} 

} 


try { 
    //do something that does throw anything. but just incase there is a null pointer or something 

} catch (LoggerException e) { // error: Unreachable catch block for LoggerException. This exception is never thrown from the try statement body 
    e.printStackTrace(); 
} 

回答

0
「爲LoggerException無法到達的catch塊。這個異常是永遠不會從try語句體拋出」

你應該延長RuntimeException類

+0

這工作,但它不捕捉IOException – code511788465541441 2014-10-04 12:39:02

+0

是的。但即使這樣做也不能幫助您更改IOException printStackTrace方法的行爲 – talex 2014-10-04 12:41:02