C#接口定义实例浅析

开发 后端
C#接口定义是如何的呢?C#接口定义需要注意哪些方面,C#接口定义的实例实现是如何的呢?那么本文就向你介绍相关的内容。

MSDN上的C#接口定义所述,接口只包含方法、委托或事件的签名。这句话用更通俗点的解释便是,接口只是负责完成定义的操作,而不去实现具体的细节。如下面的IPlayer接口,它是一个玩游戏的接口,里面只是定义了相应的方法,而不带方法的具体实现

C#接口定义实例代码如下:

  1.  /**//// <summary>  
  2.  /// 玩游戏接口  
  3.  /// </summary>  
  4.  public interface IPlayer  
  5.  {  
  6.  /**//// <summary>  
  7.  /// 获取玩家的名字  
  8.  /// </summary>  
  9.  /// <returns>玩家的名字</returns>  
  10. string GetName();  
  11.  
  12. /**//// <summary>  
  13. /// 由Player决定出什么手势  
  14. /// </summary>  
  15. /// <returns>本接口定义的三个常量之一</returns>  
  16. string Show();  
  17. }  

以上就是一个典型的接口的定义。定义了一个名为IPlayer的接口,内部定义了两个方法GetName和Show。除了在接口里定义方法以外,我们还可以定义属性、索引及事件等,详细请查看MSDN上的定义或是相关书籍,这里以属性为例简单介绍下,在接口里只能定义不实现,具体的实现是交给其子类去完成的,那么属性应该怎么定义呢?

通常我们C#接口定义属性如下:

  1. /**//// <summary>  
  2. /// 定义_Name属性,并提供get;set属性访问器  
  3. /// </summary>  
  4. private string _Name;  
  5. public string Name  
  6. {  
  7. get { return _Name; }  
  8. set { _Name = value; }  
  9. }  

那么在接口中又是怎么定义属性,并让其子类去实现呢?如下代码段:

  1. /**//// <summary>  
  2. /// 定义接口,并在接口里定义一名为Name的属性  
  3. /// </summary>  
  4. public interface IAttribute  
  5. {  
  6.    string Name { get;set;}  
  7. }  
  8. /**//// <summary>  
  9. /// 定义一个类去继承IAttribute接口,并实现其属性  
  10. /// </summary>  
  11. public class Component : IAttribute  
  12. {  
  13. public string Name  
  14. {  
  15. get 
  16. {  
  17. return "张三";  
  18. }  
  19. set 
  20. {  
  21. this.Name = value;  
  22. }  
  23. }  

C#接口定义实例的相关内容就向你介绍到这里,希望对你了解和学习C#接口定义有所帮助。

【编辑推荐】

  1. 关于interface继承来源的讨论
  2. C# Fluent Interface概念实例浅析
  3. Interface接口学习总结浅析
  4. 实例解析C#接口的作用
  5. C# interface接口学习的一点体会
责任编辑:仲衡 来源: 博客园
相关推荐

2009-08-31 16:37:20

C#接口定义

2009-09-28 14:45:22

C#接口的定义

2009-08-27 13:05:06

C#接口特点C#接口实例

2009-08-27 18:09:49

C#接口的实现

2009-08-27 13:30:11

C# interfac

2009-08-18 13:49:21

C# 操作Excel

2009-08-17 17:49:20

C# 枚举

2009-09-09 13:57:28

C# XML解析

2009-08-31 16:48:02

C#实现IDispos

2009-08-07 08:53:52

C# ICloneab

2009-09-01 18:29:24

C#实现多个接口

2009-08-07 13:39:13

C#定义整型数组

2009-08-31 17:02:28

C#接口编程

2009-09-03 14:55:34

C#计算时间间隔

2009-08-12 15:26:38

C#读取XML文档

2009-08-19 11:13:49

C#操作Word

2009-08-31 18:38:59

C#写文件

2009-08-19 11:34:06

C#操作Word

2009-09-01 13:13:28

C#打开Word文档

2009-08-18 16:04:12

C# 操作Excel
点赞
收藏

51CTO技术栈公众号