首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果需要"virtual“来允许派生类覆盖它,为什么我还需要"sealed”方法呢?

如果需要"virtual“来允许派生类覆盖它,为什么我还需要"sealed”方法呢?
EN

Stack Overflow用户
提问于 2012-12-09 10:50:22
回答 3查看 123关注 0票数 0

还是我错过了一些基本的东西??.

因为密封方法避免了它在派生类中被重写,而virtual方法允许它

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-12-09 11:08:52

  1. virtual关键字允许您(或使用您的代码的人)用自己的逻辑覆盖给定的方法。
  2. abstract关键字将强制您(或使用您的代码的其他人)使用您自己的逻辑覆盖它。
  3. sealed关键字将允许您(或使用您的代码的其他人)阻止对方法的任何进一步修改。

如果不添加“”,被重写的方法可以再次被重写。

当您想到这些关键字时,请考虑两种情况:您可以为自己编写代码,也可以创建DLL和代码库以供他人使用。后一种情况通常需要使用密封的、抽象的和虚拟的。

希望这能有所帮助!

票数 4
EN

Stack Overflow用户

发布于 2012-12-09 11:07:11

sealed用于防止子类覆盖您所覆盖的virtual方法。

票数 6
EN

Stack Overflow用户

发布于 2012-12-09 11:05:00

Methods do to be sealed or virtual.您不需要指定任何东西,这反过来会让而不是让派生类覆盖它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13784191

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档