异常-方法的覆盖
重写的方法不能比父类重写的方法更宽泛。
示例代码:
// 方法一(错误方法)
/*
public class ErrorTest06 {
public void m1() throws FileNotFoundException {
System.out.println("父类方法");
}
}
class a extends ErrorTest06 {
public void m1() throws IOException {
System.out.println("子类方法");
}
public static void main(String[] args) {
public static void main(String[] args) {
try {
m1();
}catch (FileNotFoundException e) {
e.printStackTrace();
}
}
//
// java: javase2.day02.javareview02.a中的m1()无法覆盖javase2.day02.javareview02.ErrorTest06中的m1()
// 被覆盖的方法未抛出java.io.IOException
//
}
}
*/
// 方法二(正确方法)
public class ErrorTest06 {
public static void m1() throws IOException {
System.out.println("父类方法");
}
}
class a extends ErrorTest06 {
public static void m1() throws FileNotFoundException {
System.out.println("子类方法");
}
public static void main(String[] args) {
try {
m1();
}catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}