just look at program below..
import java.io.*; import java.rmi.*; class class1 { public void m1() throws RemoteException { System.out.println(\"m1 in class1
You can throw a more specific exception in an overidden method, but not a less specific one. RemoteException is a subclass of IOException, so class1 can throw IOException and class2 RemoteException but not the other way round.