只是看看下面的程序..我學習異常在Java中處理(基本上是繼承)
import java.io.*;
import java.rmi.*;
class class1
{
public void m1() throws RemoteException
{
System.out.println("m1 in class1");
}
}
class class2 extends class1
{
public void m1() throws IOException
{
System.out.println("m1 in class2");
}
}
class ExceptionTest2
{
public static void main(String args[])
{
class1 obj = new class1();
try{
obj.m1();
}
catch(RemoteException e){
System.out.println("ioexception");
}
}
}
編譯時錯誤.....不能覆蓋M1()方法
現在如果在父類中將IOException異常替換爲子類中的RemoteException,反之亦然。然後它正在編譯。
任何其他檢查的異常組合在這裏都不起作用,即使我使用的檢查異常處於同一級別。
現在我很困惑,爲什麼重寫只發生在一種情況下,而不是在其他情況下發生? 我會真的很感謝你的回答。
非常感謝。 現在我已經試過你所說的,它正在工作 – user392675 2010-08-19 11:14:28
圍繞這些部分的禮儀,因爲你標記了你認爲正確的答案是正確的。 – 2010-08-19 15:58:53