不懂的课本上的程序了,不知道该如何下手了现在,我觉得输出结果和课本上的不一致,虽然最后终于在电脑上知道了课本上是正确的,但还是不懂得为什么,会不会是多态中的覆盖!希望大家帮帮忙~
class SuperClass
{
int x=1,y=2,t=98;
void show()
{
System.out.println("x+y="+(x+y));
}
}
class SubClass extends SuperClass
{
int y=9,z=7;
void show()
{
System.out.println("y*z="+(y*z));
}
}
public class c15_7
{
public static void main(String[] args)
{
SuperClass sc,scf;
SubClass sb,sbf;
sc=new SuperClass();
sb=new SubClass();
System.out.println("sc.x="+sc.x+"sc.y="+sc.y+"sc.t="+sc.t);
sc.show();
System.out.println("sb.y="+sb.y+"sb.z="+sb.z+"sb.t="+sb.t);
sb.show();
scf=(SuperClass)sb;
System.out.println("scf.x="+scf.x+"scf.y="+scf.y);
System.out.println("scf.show():/t");
scf.show();
sbf=(SubClass)scf;
System.out.println("sbf.x="+sbf.x+"sbf.y="+sbf.y+"sbf.z="+sbf.z);
System.out.println("sbf.show():/t");
super.show();
}
}