Java基础测试,看看你能理解不

于忠达 发布于 2011/06/22 15:48
阅读 646
收藏 1

下面的代码会输出什么呢?

public class TestDerived {

	public static void main(String[] args) {
		A a = new A1();
		B2 b = new B2();
		a.f(b);
	}

}
class A{
	void f(C c){
		System.out.println("A.f(C c)");
		System.out.println(c.getValue());
	}
//	void f(B b){
//		System.out.println("A.f(B b)");
//		System.out.println(b.getValue());
//	}
}
class A1 extends A{
//	void f(C c){
//		System.out.println("A1.f(C c)");
//		System.out.println(c.getValue());
//	}
	void f(B b){
		System.out.println("A1.f(B b)");
		System.out.println(b.getValue());
	}
}
class B{
	public String getValue() {
		return "B";
	}
}
class B1 extends B implements C{}
class B2 extends B1{
	@Override
	public String getValue() {
		return "B2";
	}
}
interface C{
	String getValue();
}
加载中
0
一号男嘉宾
一号男嘉宾
看了你这样 a A A1 b B B1这样的东西就蛋蛋疼~
0
Seal
Seal
同楼上,而且是继承。蛋都碎了。
0
Shawphy
Shawphy
是啊是啊
0
再见理想
再见理想
 编译能通过么
0
咖啡碼農
咖啡碼農
看到A、B命名法,就想到谭浩强,谭老爷子
0
alone:
alone:

你这个A B 能把新人搞晕了

0
e时代
e时代

A1.f(B b)

B2

0
笨蛋一枚
笨蛋一枚

A1.f(B b)

B2

父类引用指向子类对象 看着挺复杂 抓住本质简单

0
再见理想
再见理想

B没有实现C,第35行不会报错么

0
jeffsui
jeffsui

各种蛋疼

返回顶部
顶部