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
提交
取消