黑马程序员技术交流社区
标题:
面向对象学完了,我做这题还是很绕~~~
[打印本页]
作者:
窗外的雪儿飞
时间:
2015-9-2 23:57
标题:
面向对象学完了,我做这题还是很绕~~~
class A {
public void show() {
show2();
}
public void show2() {
System.out.println("我");
}
}
class B extends A {
public void show2() {
System.out.println("爱");
}
}
class C extends B {
public void show() {
super.show();
}
public void show2() {
System.out.println("你");
}
}
public class Test {
public static void main(String[] args) {
A a = new B();
a.show();
B b = new C();
b.show();
}
}
作者:
寰宇天侠
时间:
2015-9-3 00:02
好无聊这题。。。。
作者:
别弄那些没的
时间:
2015-9-3 00:04
你要干嘛
作者:
窗外的雪儿飞
时间:
2015-9-3 00:43
别弄那些没的 发表于 2015-9-3 00:04
你要干嘛
输出结果整不明白
作者:
窗外的雪儿飞
时间:
2015-9-3 00:45
寰宇天侠 发表于 2015-9-3 00:02
好无聊这题。。。。
好吧,都是大神级别的,我们这些菜鸟的问题都成笑话了
作者:
寰宇天侠
时间:
2015-9-3 13:01
不好意思我以为水贴。。先找被覆盖的,遇到super就往上找。。往上找到A的show2又下来找被C中覆盖的show2,,,
作者:
Wqi
时间:
2015-9-3 13:12
子类会继承父类所有非私有成员,如果子类重新定义就会覆盖父类的,此时要用被覆盖的就用super调用,没覆盖的可以直接this调用.
作者:
xie1989718
时间:
2015-9-3 14:05
a.show()是爱 因为方法重写了
b.show()输出你 因为方法重写了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2