C#顯式地實(shí)現(xiàn)接口成員的方法
本文實(shí)例講述了C#顯式地實(shí)現(xiàn)接口成員的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
// explicit1.cs interface IDimensions { float Length(); float Width(); } class Box : IDimensions { float lengthInches; float widthInches; public Box(float length, float width) { lengthInches = length; widthInches = width; } // 顯式接口成員實(shí)現(xiàn): float IDimensions.Length() { return lengthInches; } // 顯式接口成員實(shí)現(xiàn): float IDimensions.Width() { return widthInches; } public static void Main() { // 聲明類(lèi)實(shí)例“myBox”: Box myBox = new Box(30.0f, 20.0f); // 聲明接口實(shí)例“myDimensions”: IDimensions myDimensions = (IDimensions) myBox; // 打印出盒子的尺寸: /* 下列注釋行將產(chǎn)生編譯 錯(cuò)誤,因?yàn)檫@些行試圖從類(lèi)實(shí)例訪問(wèn)顯式實(shí)現(xiàn)的 接口成員: */ //System.Console.WriteLine("Length: {0}", myBox.Length()); //System.Console.WriteLine("Width: {0}", myBox.Width()); /* 從接口的實(shí)例調(diào)用方法, 以打印出盒子的尺寸: */ System.Console.WriteLine("Length: {0}", myDimensions.Length()); System.Console.WriteLine("Width: {0}", myDimensions.Width()); } }
代碼2:
// explicit2.cs // 聲明英制單位接口: interface IEnglishDimensions { float Length(); float Width(); } // 聲明公制單位接口: interface IMetricDimensions { float Length(); float Width(); } // 聲明實(shí)現(xiàn)以下兩個(gè)接口的“Box”類(lèi): // IEnglishDimensions 和 IMetricDimensions: class Box : IEnglishDimensions, IMetricDimensions { float lengthInches; float widthInches; public Box(float length, float width) { lengthInches = length; widthInches = width; } // 顯式實(shí)現(xiàn) IEnglishDimensions 的成員: float IEnglishDimensions.Length() { return lengthInches; } float IEnglishDimensions.Width() { return widthInches; } // 顯式實(shí)現(xiàn) IMetricDimensions 的成員: float IMetricDimensions.Length() { return lengthInches * 2.54f; } float IMetricDimensions.Width() { return widthInches * 2.54f; } public static void Main() { // 聲明類(lèi)實(shí)例“myBox”: Box myBox = new Box(30.0f, 20.0f); // 聲明英制單位接口的實(shí)例: IEnglishDimensions eDimensions = (IEnglishDimensions) myBox; // 聲明公制單位接口的實(shí)例: IMetricDimensions mDimensions = (IMetricDimensions) myBox; // 以英制單位打印尺寸: System.Console.WriteLine("Length(in): {0}", eDimensions.Length()); System.Console.WriteLine("Width (in): {0}", eDimensions.Width()); // 以公制單位打印尺寸: System.Console.WriteLine("Length(cm): {0}", mDimensions.Length()); System.Console.WriteLine("Width (cm): {0}", mDimensions.Width()); } }
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
c# 通過(guò)wbemtest和WMI Code Cretor更加高效的訪問(wèn)WMI
能找到這篇博客的,相信都是有操作WMI需求的了。本文將講述如何快速驗(yàn)證、并集成到C#來(lái)操作WMI。2021-05-05C#引用類(lèi)型和值類(lèi)型的介紹與實(shí)例
這篇文章主要介紹了C#引用類(lèi)型和值類(lèi)型,有需要的朋友可以參考一下2013-12-12C#算法設(shè)計(jì)之關(guān)于1000瓶水的問(wèn)題
這篇文章主要介紹了C#算法設(shè)計(jì)之關(guān)于1000瓶水的問(wèn)題,是一個(gè)比較經(jīng)典的算法問(wèn)題,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01C#對(duì)XmlHelper幫助類(lèi)操作Xml文檔的通用方法匯總
該篇文章主要總結(jié)的是自己平時(shí)工作中使用頻率比較高的Xml文檔操作的一些常用方法和收集網(wǎng)上寫(xiě)的比較好的一些通用Xml文檔操作的方法,對(duì)C#?XmlHelper幫助類(lèi)操作Xml文檔相關(guān)知識(shí)感興趣的朋友一起看看吧2022-03-03C#中的靜態(tài)字段double.Epsilon實(shí)例詳解
double.Epsilon 是C#中的一個(gè)靜態(tài)字段,表示 double 數(shù)據(jù)類(lèi)型的最小可表示的正數(shù)值,這篇文章主要介紹了C#中的靜態(tài)字段double.Epsilon的相關(guān)知識(shí),需要的朋友可以參考下2024-01-01c#圖片縮放圖片剪切功能實(shí)現(xiàn)(等比縮放)
c#圖片縮放剪切功能實(shí)現(xiàn),代碼中包含了c#圖片處理的一些基礎(chǔ)知識(shí),與大家分享2013-12-12