第一节:重写(new)覆写(overwrite)和重载(overload)
Posted chenze-index
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一节:重写(new)覆写(overwrite)和重载(overload)相关的知识,希望对你有一定的参考价值。
一丶重写<NEW>
子类重写父类方法,方法里加new,
eg: public new void CommonMethord1(string msg){}
子类继承父类中的普通方法,如果在子类中重写了一个和父类中完全相同的方法,子类中会报警告(问是否显式的隐藏父类的中的方法),如果在子类中的方法前加上new关键字,则警告消失
二丶覆写(override)
含义:在子类中,继承的父类中的抽象方法(abstract)和虚方法(virtual); 父类中虚方法(virtual)子类可以对其进行覆写, 而父类中的抽象方法(abstract),子类中必须被覆写
抽象方法:没有方法体,子类必须覆写
虚方法:必须有方法体,子类可以对其进行覆写,也可以不进行覆写
三丶重载(overload)
在 同一个类中,具有同名的方法,且与参数个数,访问修饰符,返回值类型无关
重写就是再写一遍,重载就是再多一个。重写:父类里有,子类再照猫画虎写一个。重载:自己类里面有,觉得不够再写一个。
以上是关于第一节:重写(new)覆写(overwrite)和重载(overload)的主要内容,如果未能解决你的问题,请参考以下文章
重写(overwrite)重载(overload)和覆盖(override)三者之间的区别
请问重载overload,覆盖override,重写overwrite,这三者之间有啥区别呢?