public class F {
String m() { return "F.m()" + this.s(); }
String m(F f) { return "F.m(F)" + s(); }
private String m(G g) { return "F.m(G)"; }
String k() { return "F.k()" + this.m(this); }
String k(G g) { return "F.k(G)"; }
static String s() { return "F.s()"; }
static String t() { return "F.t()"; }
}
public class G extends F{
String m() { return "G.m()" + super.s(); }
String m(F f) { return "G.m(F)"; }
String m(G g) { return "G.m(G)"; }
String k(F f) { return "G.k(F)" + this.m((G)f); }
static String s() { return "G.s()"; }
}
public class H extends G {
String k(F f) { return "H.k(F)"; }
String k(G g) { return "H.k(G)" + super.m((F)g); }
}
F a = new F();
G b = new G();F c = b; //是否意味着c 即是F类的也是G类的? (跟上一行的b什么关系啊?)
H h = new H();
为什么 b.k(a) 报错?为什么 c.m(b) c.m(a) c.m(c) 的结果是 G.m(F)? 为什么((G)h).k(b) 的结果是 H.K(G)G.m(F)?这些到底是怎么个步骤啊?很不懂-。- 拜托讲讲好吗? 感谢!
添加回答
举报
0/150
提交
取消