父类对象由子类实例化【转载】

这个涉及到 对象的多态性
父类对象由子类实例化,便是对象的多态性中的一种类型之一: 向上转型

父类 父类对象=子类实例
意思就是说:咱们是使用子类来实例化对象,而这个对象倒是披上了“父类对象”的名称
class A{ public void fun1(){} //定义父类中的fun1方法 public void fun2(){} //定义父类中的fun2方法 } class B extends A{ public void fun1(){} //覆写父类A中的fun1方法 public void fun3(){} //定义子类本身的方法 } public class Test{ public static void main(...){ A a=new B(); a.fun1(); // 可执行 a.fun3(); //没法执行,父类中没有定义fun3方法 } } 
参考楼上那位的图是不错滴~我以为挺正确的
还有在以上代码中 :a.fun3(); 没法执行,这就涉及到了 对象的多态中向下转型。书里应该有说道的。
做者:知乎用户 连接:https://www.zhihu.com/question/23433483/answer/24573654 来源:知乎 著做权归做者全部。商业转载请联系做者得到受权,非商业转载请注明出处。
相关文章
相关标签/搜索