码迷,mamicode.com
首页 > 其他好文 > 详细

重载overload & 重写 override

时间:2015-10-02 10:06:39      阅读:161      评论:0      收藏:0      [点我收藏+]

标签:

先说说面向对象3大特性

封装   //主要是由密封类,public/protect/private/Internal 来实现,通过不同的访问级别来控制

继承   //说的就是派生

多态   //多态性主要有override和overload来实现

 

 

override & overload
重载叫overload,重写叫override;

重载某个方法是在同一个类中发生的!

重写是在子类中重写父类中的方法。

 

1.override:

父类:public virtual string ToString()   {return "a";}
子类:public override string ToString()   {return "b";}

一般当父类只提供了虚方法,但是方法使用不完整,或者根本没有方法使用时,要用override


2.overload: 同一类中或父子关系类中皆可.
public string ToString()  {return "a";}
public string ToString(int id)  {return id.ToString();}

比如类中多个构造函数,有默认的,有带参数的


重写(override)是用于重写基类的虚方法,这样在派生类中提供一个新的方法;

重载(overload)是提供了一种机制, 相同函数名通过不同的返回值类型以及参数来表来区分的机制
=====================================================

很本质的区别就是看函数特征:重写(Override)的两个函数的函数特征相同,重载(Overload)的两个函数的函数名虽然相同,但函数特征不同。
函数特征包括函数名、参数的类型和个数。

重载overload & 重写 override

标签:

原文地址:http://www.cnblogs.com/kykstyle/p/4851913.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!