new
关键字、隐藏基类方法
new
关键字还可以用来隐藏基类中的方法。
当子类的方法名称与基类中的方法名称相同,但不希望子类的方法被视为重写(override)基类的方法时,可以使用 new
关键字来声明子类的方法,
从而隐藏基类的方法。
代码示例
public class BaseClass { public virtual void Show() { Console.WriteLine("BaseClass.Show()"); } } public class DerivedClass : BaseClass { // 使用 new 关键字隐藏基类的方法 public new void Show() { Console.WriteLine("DerivedClass.Show()"); } } class Program { static void Main(string[] args) { BaseClass baseObj = new DerivedClass(); baseObj.Show(); // 调用 BaseClass.Show() DerivedClass derivedObj = new DerivedClass(); derivedObj.Show(); // 调用 DerivedClass.Show() } }
应用场景
- 隐藏而非重写方法:在子类中,如果你不希望子类的方法重写基类的方法,而是完全独立于基类的方法,可以使用
new
关键字。例如,在某些特定场景下,子类需要提供与基类同名但功能不同的方法。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2022-08-31 css 设置某个区域可以上下滑动滚动