假设我们有两个包p1和p2类p1.M1扩展p2.M12如下:
package p1;
public class M1 {
void method1() {
System.out.println("Method 1 called");
}
}
package p2;
import p1.M1;
public class M12 extends M1 {
void method2() {
System.out.println("Method 2 called");
}
}
Run Code Online (Sandbox Code Playgroud)
让我们扩展M12与p2.B:
package p2;
public class B extends M12 {
public void doSomething() {
method1();
method2();
}
}
Run Code Online (Sandbox Code Playgroud)
这给出了一个编译错误的method1,是包保护范围内p1是不可见的p2.method2是没有问题的.
现在让我们来延长p2.M12使用p1.A:
package p1;
import p2.M12; …Run Code Online (Sandbox Code Playgroud)