当前位置: 代码迷 >> Java相关 >> 为什么输出不是派生类的aaa
  详细解决方案

为什么输出不是派生类的aaa

热度:378   发布时间:2007-11-21 00:48:17.0
class SuperClass
{
String a="hello";
void test()
{
System.out.println(a);
}
}
public class SubClass extends SuperClass
{
String a="aaa";
public static void main (String args[])
{
SubClass bar=new SubClass();
bar.test();
System.out.println(bar.a);
}
}
不知道我提的问题对不对
在test()函数没覆盖前,在子类的内存中中有没有test()的内存 ,还是和父类共享一个test()
在test()函数没覆盖后,是不是在SubClass中只有String a=“aaa”,String a=“hello”,覆盖后(即子类自己定义的)test()的内存
----------------解决方案--------------------------------------------------------
java里,同一个类里不能有同名的变量来覆盖使用。。
继承里是不建议这么使用。。。

你就一个test方法。。怎么覆盖啊???
----------------解决方案--------------------------------------------------------

变量有作用域,方法是动态邦定.


----------------解决方案--------------------------------------------------------
  相关解决方案