父类引用子类的实例只能调用父类的方法,如果要调用子类的方法必须强转.
public Class A
{
public void fly()
{ }
}
public Class B:A
{
public void run()
{}
}如果我A a=new B();a.fly() a可以直接调用父类的方法 (B)a.run()这样才能调用子类的run()那什么情况下父类需要引用子类的实例呢?这样做有什么好处呢?
public Class A
{
public void fly()
{ }
}
public Class B:A
{
public void run()
{}
}如果我A a=new B();a.fly() a可以直接调用父类的方法 (B)a.run()这样才能调用子类的run()那什么情况下父类需要引用子类的实例呢?这样做有什么好处呢?
例如你子类的方法重写了父类的方法以后. 就是说,子类改变了父类方法的行为以后. 同时你的程序又需要像子类里的方法这样的行为来满足你的程序.
就是说,子类改变了父类方法的行为以后. 同时你的程序又需要像子类里的方法这样的行为来满足你的程序.最后一句好模糊啊..