我正在爲一個框架的Java插件工作。Java異常處理 - 這是一個好的做法嗎?
我寫我的代碼以這樣一種方式,入口函數看起來像下面(認爲這是出發點,主要功能)
function entryPoint()
{
try{
//some code block
subFunction1();
subFunction2();
}
catch(Exception e) {}
catch(IOException ioe) {}
catch(NullPointerException npe){}
}
function subFunction1() throws IOException
{
//some code
}
function subFunction2() throws NullPointerException
{
//some code
}
這樣的想法是,所有的子功能將引發特定的例外主要功能和 我們捕捉這些例外的主要功能,並做處理。
這是正確的嗎?如果不是,請提出更好的方法。
首先捕捉'Exception'至少不會做任何事情。但無論如何,這是太多的宗教/意見與異常處理... – NilsH 2013-05-06 08:08:24
你永遠不應該趕上你自己的NPE。它們表示一個*編碼*錯誤,應該是固定的,而不是被捕獲。 – dlev 2013-05-06 08:10:09
@NilsH:是的。我發現多個堆棧溢出的答案,這表明多種方法。但是這種方法不是一個好的設計? – balanv 2013-05-06 08:10:40