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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 向晓伟 中级黑马   /  2014-6-26 15:11  /  1224 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 向晓伟 于 2014-6-30 15:26 编辑

之前在c++上见到过,发现C#也是这样。
所以特来水一贴~知道的朋友就当复习,不知道的朋友就当预习~哈哈~
特别是隐藏规则使问题复杂性增加很多,要注意啊!


重载(overload)用于同一类中的成员函数,其特征为:
     * 1)在同一类中
     * 2)相同的函数名
     * 3)参数不同(包括参数类型不同,或参数个数不同,或两者都不同,注意:和返回值没关系)
     * 4)和是否虚函数无关

     覆盖(override)是指派生类函数覆盖基类函数,其特征为:
     * 1)不同的范围(分别位于派生类与基类)
     * 2)相同的函数名称
     * 3)参数相同
     * 4)基类函数必须是虚函数
用法:基类中用virtual修饰符,子类中用override修饰符,重写后,子类对象和基类对象访问该方法时,结果都是在访问子类中重新定义的方法。

    隐藏(hide)是指派生类的函数屏蔽了与其同名的基类函数,其特征为:
     * 1)不同的范围(分别位于派生类与基类)
     * 2)相同的函数名
     * 3)若参数不同,不管基类函数有无virtual关键字,基类函数将会被隐藏。
         若参数相同,基类函数无virtual关键字。基类函数将会被隐藏。
用法:基类函数virtual修饰符可有可无,子类函数可用new标识隐藏该方法,最后通过基类的引用访问该方法时,访问的仍是基类的函数,子类对象访问的是子类的函数。

点评

你好,这种分享的帖子,应该改为“分享资源”  发表于 2014-7-8 23:45

6 个回复

倒序浏览
嗯啊 赞一个
回复 使用道具 举报
先预习一下,还没有学到呢!
正在做飞行棋
回复 使用道具 举报
你这个帖子可以编辑为资源共享
回复 使用道具 举报
czwanglei 发表于 2014-6-28 21:54
你这个帖子可以编辑为资源共享

我在主题分类那没有资源共享的选项,怎么弄啊?
回复 使用道具 举报
向晓伟 发表于 2014-6-29 13:17
我在主题分类那没有资源共享的选项,怎么弄啊?

不好意思,应该是资源分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马