如果父类中的方法“抛出异常”,我们可以在Java中的重写方法中将其删除吗?
当超类方法在覆盖它时引发异常时,您需要遵循某些规则。
子类方法应该抛出Same异常,或者子类型-
它不应该抛出超级类型的异常-
您可以将方法保留在子类中而不会引发任何异常
根据第三条规则,如果超类方法引发某些异常,则可以覆盖它而不会引发任何异常。
示例
在下面的示例中,超类的sampleMethod()方法引发FileNotFoundException异常,而sampleMethod()方法根本不引发任何异常。该程序仍然可以编译并执行,没有任何错误。
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Scanner;
abstract class Super{
public void sampleMethod()throws FileNotFoundException{
System.out.println("Method of superclass");
}
}
public class ExceptionsExample extends Super{
public void sampleMethod() {
System.out.println("Method of Subclass");
}
public static void main(String args[]) {
ExceptionsExample obj = new ExceptionsExample();
obj.sampleMethod();
}
}输出结果
Method of Subclass
热门推荐
10 毛笔哥哥结婚祝福语简短
11 向国庆送祝福语简短
12 建队节祝福语简短
13 朋友喜得外孙简短祝福语
14 小店营业的祝福语简短
15 餐饮生日祝福语简短独特
16 鲜花英语祝福语卡片简短
17 男朋友暴富祝福语简短
18 婶婶拜年祝福语大全简短