欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > C# >内容正文

C#

C#接口实现多态

发布时间:2023/11/29 C# 77 豆豆
生活随笔 收集整理的这篇文章主要介绍了 C#接口实现多态 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

我比较喜欢对感兴趣的理论进行反复的理解甚至理解背诵下来,接下来再复习一下什么叫多态(哈哈哈)

多态:在同一粒度视图下对相同类型的事物不做区别的统一处理

接下来看一下接口和引擎类是如何实现多态的:

一、

1、创建了一个接口类:IWeapon

1 public interface IWeapon 2 { 3 void Fire(); 4 }

2、声明几个类去实现这个接口(展示描述的词语是我老师的佳作,我可是软妹子(哈哈哈))

1 public class Gun : IWeapon 2 { 3 public void Fire() 4 { 5 Console.WriteLine("pa peng pa peng"); 6 } 7 } 8 9 public class Sword : IWeapon 10 { 11 public void Fire() 12 { 13 Console.WriteLine("七剑下天山"); 14 } 15 16 } 17 18 public class Tank : IWeapon 19 { 20 public void Fire() 21 { 22 Console.WriteLine("压死你"); 23 } 24 } 25 26 public class Xiaomugun : IWeapon 27 { 28 public void Fire() 29 { 30 Console.WriteLine("扎死你"); 31 } 32 }

3、创建一个引擎类:Engine(以接口为参数)

1 public static void Play(IWeapon w) 2 { 3 w.Fire(); 4 }

4、在程序入口处调用引擎类,实现多态

1 InterfaceDemo.Engine.Play(new InterfaceDemo.Gun()); 2 InterfaceDemo.Engine.Play(new InterfaceDemo.Sword()); 3 InterfaceDemo.Engine.Play(new InterfaceDemo.Tank()); 4 InterfaceDemo.Engine.Play(new InterfaceDemo.Xiaomugun());

上面调用的结果是:

1 pa peng pa peng 2 七剑下天山 3 压死你 4 扎死你

顺便复习一下抽象类和接口的一点小区别:

一个类可以去实现多个接口,表示这个类的对象可以做什么

一个类只能继承一个抽象类,相当于派生类是一个抽象类的意思,从属关系比较紧凑

转载于:https://www.cnblogs.com/fllowerqq/p/10797522.html

总结

以上是生活随笔为你收集整理的C#接口实现多态的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。