扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
// Code #01 class Base { public virtual void PrintStatus() { Console.WriteLine("public virtual void PrintStatus() in Base"); } } |
// Code #02 public void DisplayStatusOf(Base[] bs) { foreach (Base b in bs) { b.PrintStatus(); } } |
public static XmlReader Create(Stream input); |
// Code #03 class Derived1 : Base { public override void PrintStatus() { Console.WriteLine("public override void PrintStatus() in Derived1"); } } |
// Code #04 class Derived2 : Base { public new void PrintStatus() { Console.WriteLine("public new void PrintStatus() in Derived2"); } } |
Base[] bs = new Base[] { new Base(), new Derived1(), new Derived2() }; |
// Output #01 // public virtual void PrintStatus() in Base // public override void PrintStatus() in Derived1 // public virtual void PrintStatus() in Base |
// Code #06 Base d2 = new Derived2(); d2.PrintStatus(); // Output #02 // public virtual void PrintStatus() in Base 而在 Derived2 内部,你可以透过 base 来访问: // Code #07 base.PrintStatus(); |
// Code #08 interface IFace { void PrintStatus(); } class Base : IFace { public virtual void PrintStatus() { Console.WriteLine("public virtual void PrintStatus() in Base"); } } |
// Code #09 class Derived2 : Base, IFace { public new void PrintStatus() { Console.WriteLine("public new void PrintStatus() in Derived2"); } } |
// Code #10 IFace[] fs = new IFace[] { new Base(), new Derived1(), new Derived2(), } |
// Code #11 public void DisplayStatusOf(IFace[] fs) { foreach (IFace f in fs) { f.PrintStatus(); } } |
// Output #03 // public virtual void PrintStatus() in Base // public override void PrintStatus() in Derived1 // public new void PrintStatus() in Derived2 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者