日期:2014-05-20  浏览次数:21114 次

子类的实例方法中能否直接调用父类的类方法?
子类的实例方法中能否直接调用父类的类方法?为什么?

------解决方案--------------------
我也是刚学的。
不过应该可以用supper 调用父类的方法。
------解决方案--------------------
可以的,这是继承的优点之一
------解决方案--------------------
既然是类方法,就可以直接通过类名调用。
------解决方案--------------------
直接用supper.方法不就行了
------解决方案--------------------
你得看一看这方面的书了。

这个一时半会说不清楚,让你看两个例子就会明天些:

public class A
{

public static void main(String[] args)
{
B b=new B();
b.pro();
B bc=new C();
bc.pro();
C c=new C();
c.pro();
}
}

class B
{
public B()
{
System.out.println( "B.B() ");
}

public void pro()
{
System.out.println( "B.pro() ");
}
}

class C extends B
{
public C()
{
System.out.println( "C.C() ");
}

public void pro()
{
System.out.println( "C.pro() ");
}
}
运行结果:
B.B()
B.pro()
B.B()
C.C()
C.pro()
B.B()
C.C()
C.pro()


public class A
{

public static void main(String[] args)
{
B b=new B();
b.pro();
B bc=new C();
bc.pro();
C c=new C();
c.pro();
}
}

class B
{
public B()
{
System.out.println( "B.B() ");
}

public void pro()
{
System.out.println( "B.pro() ");
}
}

class C extends B
{
public C()
{
System.out.println( "C.C() ");
}

public void pro()
{
super.pro();
System.out.println( "C.pro() ");
}
}
运行结果:
B.B()
B.pro()
B.B()
C.C()
B.pro()
C.pro()
B.B()
C.C()
B.pro()
C.pro()

------解决方案--------------------
楼上的是老师么
解释的真是详细啊