在 Java 中,子类在重写时是否可以选择不抛出异常?
javaobject oriented programmingprogramming更新于 2024/8/26 10:12:00
如果超类方法抛出某些异常,则可以重写它而不抛出任何异常。
示例
在下面的示例中,超类的 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("超类的方法"); } } public class ExceptionsExample extends Super { public void sampleMethod() { System.out.println("子类的方法"); } public static void main(String args[]) { ExceptionsExample obj = new ExceptionsExample(); obj.sampleMethod(); } }
输出
子类的方法