- class A {
-
- public void show() {
- show2();
- }
- public void show2() {
- System.out.println("我");
- }
- }
- class B extends A {
- public void show() {
- show2();
- }
-
- public void show2() { //为什么不写这个方法,程序还是可以运行并输出 你
- System.out.println("爱"); //b.show()调用自己show()方法,而show()方法体调用父类show()方法,此时调用show2()方法,它不是要先看看自己有没有show2()方法,然后再运行子类show2()方法吗,为什么我把这个方法注释掉了,还是编译成功呢
- }
- }
- class C extends B {
- public void show() {
- super.show();
- }
-
- public void show2() {
- System.out.println("你");
- }
- }
- public class Test2DuoTai {
- public static void main(String[] args) {
-
- B b = new C();
- b.show(); //
-
- }
- }
复制代码
|
|