国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C# 實例化接口對象的方法

2020-01-24 00:44:47
字體:
來源:轉載
供稿:網友

在head first 設計模式中 用到了很多很多接口對象

首先澄清一個問題,就是接口不僅可以聲明對象,而且可以把對象實例化,還可以當做參數被傳入。

一、接口回調

這就是繼承中的向上轉型。父類 FL=new 子類();只不過這里的父類就是interface接口。(個人認為這里不管是class的override還是interface的重寫,都是一樣的用法)

可以把實現某一接口類創建的對象的引用賦給該接口聲明的接口變量,那么該 接口變量就可以調用被類實現的接口中的方法。實際上,當接口變量調用被類實現的接口中的方法時,就是通知相應的對象調用接口方法

直接上代碼

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{  interface Itemp  {    double plus();  }  public class num : Itemp  {    double aa, bb;    public num(double a, double b)    {      this.bb = b;      this.aa = a;    }    public double plus()    {      return (aa * bb);    }  }  class Program  {    static void Main(string[] args)    {      num n = null;//聲明類對象引用      Itemp tm = null;//聲明接口對象引用      tm = new num(1.1, 2.2);//接口回調(向上轉型)      Console.WriteLine(tm.plus());      Console.ReadKey();    }  }}

通過上面的例子,我們不難看出,接口對象的實例化實際上是一個接口對象作為一個引用,指向實現了它方法的那個類中的所有方法,這一點非常象C++中的函數指針(在C#中類似委托),但是卻是有區別的。C#中的接口對象實例化實際上是一對多的,而C++中的函數指針是一對一的。

但是需要注意的是,接口對象的實例化必須用實現它的類來實例化,而不能用接口本身實例化。用接口本身實例化它自己的對象在C#中是不允許的。

以上這篇C# 實例化接口對象的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 青浦区| 唐山市| 泸西县| 大兴区| 吉首市| 安西县| 浦东新区| 纳雍县| 乌拉特中旗| 安龙县| 松桃| 柏乡县| 中超| 巩义市| 墨竹工卡县| 绍兴县| 福建省| 莱州市| 山东| 惠来县| 九江市| 隆林| 孟津县| 平谷区| 阿拉善左旗| 垫江县| 荃湾区| 大洼县| 登封市| 瑞安市| 开封市| 肇东市| 额尔古纳市| 贡山| 祥云县| 盘山县| 溧阳市| 富裕县| 新乐市| 徐州市| 柏乡县|