加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

[VB.NET]派生类用overloads关键字覆盖基类方法有什么意义?

发布时间:2020-12-16 23:42:20 所属栏目:大数据 来源:网络整理
导读:派生类用overloads关键字覆盖基类方法有什么意义? 跟shadows比有何优点(缺点) __________________________________________________________________________ 再补充一个,如果overloads可以重写基类方法,还要overrides干嘛? _________________________
派生类用overloads关键字覆盖基类方法有什么意义? 跟shadows比有何优点(缺点) __________________________________________________________________________ 再补充一个,如果overloads可以重写基类方法,还要overrides干嘛? __________________________________________________________________________ 顶 __________________________________________________________________________ 为什么要有这个shadows,主要是因为程序版本的问题,一般而言,应该现有父类才能有派生类,但使用派生类者当然可以定义自己的方法,比如sayHello,但后来父类发现sayHello这个方法蛮好,也取了同名的方法(父类可不知道它的派生类已经用了这个方法名),那么,显然,如果你用父类的引用调用这个sayHello方法的时候最好还是调用父类自己的,而不是派生类的(这才符合你的程序的本意),当然这也是C#默认的处理方式,但这样编译器好歹在编译的时候会给你一个警告. 我们加上shadows的意思是告诉编译器 我知道我在干什么,你别来烦我,所以编译器就不哼了 同理这个shadows出来的方法只有子类对象自己能用的到,所以无论你是使用基类的引用还是接口的引用别人都访问不到. 而使用overrides则表明子类方法对父类方法的重写,这也就是我们经常所说的多态 有兴趣可以看看这个 http://www.microsoft.com/china/community/Column/6.mspx __________________________________________________________________________

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读