A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 闫浩 初级黑马   /  2012-4-8 16:42  /  1785 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

多态就是指:父类引用指向子类对象吗?

评分

参与人数 1技术分 +1 收起 理由
岳民喜 + 1

查看全部评分

3 个回复

倒序浏览
继承,是多态的前提。
继承是,子类能用父类中非私有的方法。多态是,父类能使用子类中的方法(从父类中继承过来的方法)。
使用多态,编译时期,JVM会检查你调用的方法是否存在于父类中,不存在就会出错,存在的话,编译通过。然后运行该防范(该方法可能会被覆写拓展)。
但是,父类的引用却不能调用子类特有的方法。因为在编译时期在父类中找不到子类那个特有的方法,编译通不过。
如果需要运行子类特有的方法,就会转型。
其实,你可以将多态跟泛型结合起来思考。

评分

参与人数 1技术分 +1 收起 理由
岳民喜 + 1

查看全部评分

回复 使用道具 举报
多态  按字面的意思就是“多种状态”。在面向对象语言中,接口的多种不同的实现方式即为多态。引用Charlie Calverts对多态的描述——多态性是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作(摘自“Delphi4 编程技术内幕”)。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。多态性在Object Pascal和C++中都是通过虚函数 实现的
回复 使用道具 举报
楼主,你要继续努力啊!你是bbs的希望啊!你是网络文学的希望啊!你是整个 文学界的希望啊!你是整个人类的希望啊!你是整个太阳系的希望啊!你是整个异次元空间的希望啊!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马