C#顯式地實現(xiàn)接口成員的方法
更新時間:2015年06月28日 11:48:55 作者:pythoner
這篇文章主要介紹了C#顯式地實現(xiàn)接口成員的方法,實例分析了C#接口的相關(guān)使用技巧,需要的朋友可以參考下
本文實例講述了C#顯式地實現(xiàn)接口成員的方法。分享給大家供大家參考。具體實現(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; } // 顯式接口成員實現(xiàn): float IDimensions.Length() { return lengthInches; } // 顯式接口成員實現(xiàn): float IDimensions.Width() { return widthInches; } public static void Main() { // 聲明類實例“myBox”: Box myBox = new Box(30.0f, 20.0f); // 聲明接口實例“myDimensions”: IDimensions myDimensions = (IDimensions) myBox; // 打印出盒子的尺寸: /* 下列注釋行將產(chǎn)生編譯 錯誤,因為這些行試圖從類實例訪問顯式實現(xiàn)的 接口成員: */ //System.Console.WriteLine("Length: {0}", myBox.Length()); //System.Console.WriteLine("Width: {0}", myBox.Width()); /* 從接口的實例調(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(); } // 聲明實現(xiàn)以下兩個接口的“Box”類: // IEnglishDimensions 和 IMetricDimensions: class Box : IEnglishDimensions, IMetricDimensions { float lengthInches; float widthInches; public Box(float length, float width) { lengthInches = length; widthInches = width; } // 顯式實現(xiàn) IEnglishDimensions 的成員: float IEnglishDimensions.Length() { return lengthInches; } float IEnglishDimensions.Width() { return widthInches; } // 顯式實現(xiàn) IMetricDimensions 的成員: float IMetricDimensions.Length() { return lengthInches * 2.54f; } float IMetricDimensions.Width() { return widthInches * 2.54f; } public static void Main() { // 聲明類實例“myBox”: Box myBox = new Box(30.0f, 20.0f); // 聲明英制單位接口的實例: IEnglishDimensions eDimensions = (IEnglishDimensions) myBox; // 聲明公制單位接口的實例: 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()); } }
希望本文所述對大家的C#程序設(shè)計有所幫助。
相關(guān)文章
c# 通過wbemtest和WMI Code Cretor更加高效的訪問WMI
能找到這篇博客的,相信都是有操作WMI需求的了。本文將講述如何快速驗證、并集成到C#來操作WMI。2021-05-05C#中的靜態(tài)字段double.Epsilon實例詳解
double.Epsilon 是C#中的一個靜態(tài)字段,表示 double 數(shù)據(jù)類型的最小可表示的正數(shù)值,這篇文章主要介紹了C#中的靜態(tài)字段double.Epsilon的相關(guān)知識,需要的朋友可以參考下2024-01-01