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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张振鹏 黑马帝   /  2011-11-14 16:56  /  4019 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 张振鹏 于 2011-11-14 17:08 编辑

运行时多态与编译时多态的区别。求解!

评分

参与人数 1技术分 +1 收起 理由
陈涛 + 1

查看全部评分

5 个回复

正序浏览
付炯 黑马帝 2011-11-15 23:03:59
地板
这是在百度找到的 希望对你有帮助
多态性包含编译时的多态性、运行时的多态性两大类,亦即静态多态性和动态多态性。
静态多态性是指定义在一个类或一个函数中的同名函数,它们根据参数表(类型以及个数)区别语义,并通过静态联编实现,例如在一个类中定义的不同参数的构造函数。
动态多态性是指定义在一个类层次的不同类中的重载函数,它们一般具有相同的函数,因此要根据指针指向的对象所在类来区别语义,它通过动态联编实现。
参见 http://baike.baidu.com/view/261058.htm#5

评分

参与人数 1技术分 +1 收起 理由
陈涛 + 1

查看全部评分

回复 使用道具 举报
1. 编译时的多态性
编译时的多态性是通过重载来实现的。对于非虚的成员来说,系统在编译时,根据传递的参数、返回的类型等信息决定实现何种操作。
2.运行时的多态性
运行时的多态性就是指直到系统运行时,才根据实际情况决定实现何种操作。C#中,运行时的多态性通过虚成员实现。

评分

参与人数 1技术分 +1 收起 理由
陈涛 + 1

查看全部评分

回复 使用道具 举报
编译时多态: 重载
运行时多态 : 虚方法
回复 使用道具 举报
郑文 黑马帝 2011-11-14 19:36:23
藤椅
没听说过 求解
回复 使用道具 举报
黄威 黑马帝 2011-11-14 19:27:27
沙发
设置个断点、监视可以查看运行时的结果,用反编译工具查看编译时的结果。

评分

参与人数 1技术分 +1 收起 理由
陈涛 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马