c# interface 的理解(工厂模式)简单实例

简介: 由于昨天在一个大公司面试,被c#中的一个interface给难住了,所以回来以后我就找了这些资料看了一下,有了一点感觉。记录下来,方便以后使用。 c# interface定义:就是以前使用的类似于 API 的东西,别人告诉你一个类型,你在心得开发过程中可以使用。

由于昨天在一个大公司面试,被c#中的一个interface给难住了,所以回来以后我就找了这些资料看了一下,有了一点感觉。记录下来,方便以后使用。

c# interface定义:就是以前使用的类似于 API 的东西,别人告诉你一个类型,你在心得开发过程中可以使用。

比如:

  

interface ITest
  {
   string iText();
  }

  class Test:ITest
  {
   #region ITest Members

   public string iText()
   {
    // TODO:  Add Test.printText implementation
    return ("Test string.");
   }

   #endregion

  }

  class Test2:ITest
  {
   #region ITest Members

   public string iText()
   {
    // TODO:  Add Test.printText implementation
    return ("Test2 string.");
   }

   #endregion

  }

  class Factory 
  {
   public static ITest create(int itype)
   {
    if(itype==1)
    {
     return new Test();
    }
    else
    {
     return new Test2();
    }
   }

  }


  private void button1_Click(object sender, System.EventArgs e)
  {
   ITest it=Factory.create(2);
   this.label1.Text=it.iText();
  }
 }

 

Test 和 Test2 都是继承接口 ITest ,在使用ITest时候,使用了简单的Factory模式来建立,本来是使用了Rose来画一个UML模型上来也许讲解的更详细,但是Rose也是这次学习的一点,所以没有使用会,正在研究中.

一个简单的实例,让我了解到:

1、接口 Interface : 并不是我想象的那么可怕,如果我简单的理解就是一个户口登记的地方,在这里登记的用户(方法),在他的儿子(实现接口的类型: Test ,Test2)中,就必须承认Interface中的人员的存在,并且必须给安排一个位置(实现接口的内容)。所以接口的最简单的好处就是:保持了继承型,使更多的人联系起来。

2、工厂模式:Facory Model:最开始接触这些东西是在Patterns In Java 的pdf中看到的,因为模式的编程方式是对接口编程的,所以开始理解这些方面的时候理解上有问题了。现在总算能明白一点点了。工厂模式就是(ITest)的新生儿(接口的实现类: Test,Test2)的户口登记处,到时候不管你要用那个儿子,只需要在这注册一下,就ok了。

简单的一个实例,让我对接口interface和Factory Model有了最基本的认识,也是刚刚理解这些东西,所以肯定有一些漏洞,但是我会继续加油,努力把这部分学好的。

加油!

 

 

 
目录
相关文章
|
缓存 C#
C# 操作路径(Path)类方法的使用与解析运行实例
C# 操作路径(Path)类方法的使用与解析运行实例
|
数据采集 JSON API
C#网络爬虫实例:使用RestSharp获取Reddit首页的JSON数据并解析
C#网络爬虫实例:使用RestSharp获取Reddit首页的JSON数据并解析
|
2月前
|
设计模式 C#
C# 一分钟浅谈:工厂模式与抽象工厂模式
【10月更文挑战第10天】本文介绍了面向对象编程中的两种常见创建型设计模式:工厂模式和抽象工厂模式。工厂模式通过共同接口创建对象,隐藏创建逻辑,提高封装性和扩展性;抽象工厂模式则提供了一系列相关对象的创建接口,适用于多个相关产品族的创建。文章通过C#代码示例详细解释了这两种模式的实现和应用场景,并讨论了它们的优点、缺点及常见问题。
62 19
|
2月前
|
C#
C# 接口(Interface)
接口定义了所有类继承接口时应遵循的语法合同。接口定义了语法合同 "是什么" 部分,派生类定义了语法合同 "怎么做" 部分。 接口定义了属性、方法和事件,这些都是接口的成员。接口只包含了成员的声明。成员的定义是派生类的责任。接口提供了派生类应遵循的标准结构。 接口使得实现接口的类或结构在形式上保持一致。 抽象类在某种程度上与接口类似,但是,它们大多只是用在当只有少数方法由基类声明由派生类实现时。 接口本身并不实现任何功能,它只是和声明实现该接口的对象订立一个必须实现哪些行为的契约。 抽象类不能直接实例化,但允许派生出具体的,具有实际功能的类。
49 9
|
2月前
|
数据可视化 程序员 C#
C#中windows应用窗体程序的输入输出方法实例
C#中windows应用窗体程序的输入输出方法实例
54 0
|
4月前
|
传感器 开发框架 JSON
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
聊聊 C# dynamic 类型,并分享一个将 dynamic 类型变量转为其它类型的技巧和实例
201 0
|
5月前
|
文字识别 自然语言处理 C#
印刷文字识别使用问题之C#发票识别的代码实例在哪里可以查看
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
6月前
|
C#
C#||委托和事件的实例
C#||委托和事件的实例
|
消息中间件 监控 数据可视化
【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例
influxDB的官网下载地址 https://portal.influxdata.com/downloads/打开以后,如下图所示,可以选择版本号,以及平台。此处咱们选择windows平台。不过此处没有实际的可以下载的地方,着实比较过分,不过咱们可以另辟蹊径。
1186 0
【时序数据库InfluxDB】Windows环境下配置InfluxDB+数据可视化,以及使用 C#进行简单操作的代码实例
|
设计模式 C#
c#设计模式-创建型模式 之 工厂模式
工厂模式(Factory Pattern)是一种常用的对象创建型设计模式。该模式的主要思想是提供一个创建对象的接口(也可以是抽象类、静态方法等),将实际创建对象的工作推迟到子类中进行。这样一来,客户端只需关注接口而无须了解具体的类实现,实现了代码的解耦,提高了系统的可维护性和扩展性。工厂模式可以分为简单工厂模式,工厂方法模式和抽象工厂模式。简单工厂模式:又叫静态工厂方法模式,它是由一个工厂对象决定创建出哪一种产品类的实例,但它不属于工厂模式家族,它属于创建型模式,但不属于23种GOF设计模式之一。
52 1