我正准备自己进行测试,我发现这段代码我不明白.
如果我覆盖这样的方法,它就无法编译.好,可以.我必须在第2行抛出一个父异常,(比如抛出异常),它会工作得很好......但是,为什么有可能呢,用public void charlie改变第7行抛出NullPointerException?这会编译得很好,因为我仍然没有在第2行中抛出任何东西.
1.public class A {
2. public void charlie()
3. {
4.
5. }
6. class B extends A{
7. public void charlie() throws IOException
8. {}
9. }
10.}
Run Code Online (Sandbox Code Playgroud)