c# 继承 virtual override new
来源:互联网 发布:证件照合成软件 编辑:程序博客网 时间:2024/05/22 00:38
简单例子整理
using System;namespace ConsoleApplication1{ class BaseClass { public virtual void Method0() { Console.WriteLine("Base - Method0"); } public virtual void Method1() { Console.WriteLine("Base - Method1"); } public void Method2() { Console.WriteLine("Base - Method2"); } } class DerivedClass : BaseClass { public override void Method0() { Console.WriteLine("Derived - Method0"); } public new virtual void Method1() { Console.WriteLine("Derived - Method1"); } public new void Method2() { Console.WriteLine("Derived - Method2"); } } class Program { static void Main(string[] args) { BaseClass bc = new BaseClass(); DerivedClass dc = new DerivedClass(); BaseClass bcdc = new DerivedClass(); // The following two calls do what you would expect. They call // the methods that are defined in BaseClass. bc.Method0(); bc.Method1(); bc.Method2(); // Output: // Base - Method0 BaseClass bc = new BaseClass(); virtual -> override // Base - Method1 DerivedClass dc = new DerivedClass(); virtual -> new virtual // Base - Method2 BaseClass bcdc = new DerivedClass(); 空 -> new // The following two calls do what you would expect. They call // the methods that are defined in DerivedClass. dc.Method0(); dc.Method1(); dc.Method2(); // Output: // Derived - Method0 BaseClass bc = new BaseClass(); virtual -> override // Derived - Method1 DerivedClass dc = new DerivedClass(); virtual -> new virtual // Derived - Method2 BaseClass bcdc = new DerivedClass(); 空 -> new // The following two calls produce different results, depending // on whether override (Method1) or new (Method2) is used. bcdc.Method0(); bcdc.Method1(); bcdc.Method2(); // Output: // Derived - Method0 BaseClass bc = new BaseClass(); virtual -> override // Base - Method1 DerivedClass dc = new DerivedClass(); virtual -> new virtual // Base - Method2 BaseClass bcdc = new DerivedClass(); 空 -> new Console.ReadKey(); } }}
1 0
- c# 继承 virtual override new
- C#继承中的关键字 virtual、override 与new
- C#继承中abstract、virtual、override和new
- C#继承之base,virtual,override,abstract,new,sealed关键字
- C# 继承与多态,相关关键字virtual、override、new
- C#继承中virtual、override、new的使用
- C# virtual,override,new学习
- C# new virtual override 区别
- C# virtual、Override、New小结
- C# virtual,override,new 实例
- C#关键字abstract virtual interface new override
- C#中的三个关键词new , virtual , override
- C# override、new、abstract 与virtual详解
- C# new virtual override 之间的区别
- C#之virtual override new关键字
- C#区分abstract、virtual、override和new
- C# virtual override abstract new区别
- C# 关键字 abstract, virtual, override, sealed, new
- 互联网架构 SOA(Dubbo)
- 使用zsh的十大优点
- CodeForces651AJoysticks
- 在jsp中获取已选中checkbox其他列的值
- Java之调用被子类重载的方法
- c# 继承 virtual override new
- Android studio 挂断电话 使用ITelephony.aidl
- Queue LifoQueue and PriorityQueue
- codeforces 676C (尺取法)
- nyoj 762第k个互质数 poj 2773Happy 2006
- Verilog基础知识2(FPGA小数运算处理--定点小数)
- java并发编程实践(2)线程安全性
- 数据结构与算法的分析 —— 渐进复杂度(三个记号)
- 解决方法:android 6.0(api 23) SDK,不再提供org.apache.http.*(只保留几个类)