我正在處理一個android項目,我想弄清楚如何拋出異常回調用線程。拋出異常回到調用方法
我所擁有的是一項活動,當用戶點擊一個按鈕時,它會調用另一個Java類(不是活動,標準類)中的線程函數。標準類中的方法可以拋出IOException
或Exception
。我需要將異常對象拋回到活動中的調用方法,以便活動可以根據異常返回的內容做一些事情。
下面是我的活動代碼:
private void myActivityMethod()
{
try
{
MyStandardClass myClass = new MyStandardClass();
myClass.standardClassFunction();
}
catch (Exception ex)
{
Log.v(TAG, ex.toString());
//Do some other stuff with the exception
}
}
下面是我的標準類函數
private void standardClassFunction()
{
try
{
String temp = null;
Log.v(TAG, temp.toString()); //This will throw the exception as its null
}
catch (Exception ex)
{
throw ex; //Don't handle the exception, throw the exception backto the calling method
}
}
當我把throw ex
在異常時,Eclipse似乎是不開心,反而問我包圍在另一個try/catch中,throw ex
,這意味着,如果我這樣做,則異常將在第二次嘗試/ catch中處理,而不是調用方法異常處理程序。
感謝您提供的任何幫助。
'Exception'是一個檢查的異常。 'NullPointerException'也是一個'Exception',但它更具體地說是一個未被選中的'RuntimeException'。 –
非常標準的java東西...只需將引發添加到您的方法聲明。 – Submersed
http://docs.oracle.com/javase/tutorial/essential/exceptions/catchOrDeclare.html –