一道关于子类夫类的简单题

来源:百度知道 编辑:UC知道 时间:2024/05/15 07:28:40
class A{
int ivar =7;
void m1{
System.out.print("A's m1, ");
}

void m2{
System.out.print("A's m2, ");
}

void m3{
System.out.print("A's m3, ");
}
}

class B extends A{
void m1{
System.out.print("B's m1, ");
}
}

class C extends B{
void m3{
System.out.print("C's m3, "+(ivar +6));
}
}

public calss Mixed{
public void main(String [] args){
A a = new C();
a.m1();
a.m2();
a.m3();
}
}

结果是打出啥?
谢谢各位帮助菜鸟...
如果像各位所说,
public calss Mixed{
public void main(String [] args){
C c = new C();
c.m1();
c.m2();
c.m3();
}
} 的答案是B's m1, A's m2,C's m3,13
这个输出结果不就跟A a=new C()的一样?

A a=new C();这道题给的答案是
B's m1, C's m2, A's m3,
是不是答案错了?

B's m1, A's m2,C's m3,13
应该是这个吧

System.out.print("A's m1, ");
System.out.print("A's m2, ");
System.out.print("A's m3, ");
System.out.print("B's m1, ");
这是一道JAVA的程序题,System.out.print 是输出语句,输出的结果会和括号里面的一样,因为它是用引号引起来的,引号中的是字符串型的,它会原样输出。

B's m1, A's m2,C's m3,13
Java是在运行期间动态邦定的!