C#显式地实现接口成员的方法
程序员文章站
2023-12-03 11:06:16
本文实例讲述了c#显式地实现接口成员的方法。分享给大家供大家参考。具体实现方法如下:
// explicit1.cs
interface idimensions...
本文实例讲述了c#显式地实现接口成员的方法。分享给大家供大家参考。具体实现方法如下:
// 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; } // 显式接口成员实现: float idimensions.length() { return lengthinches; } // 显式接口成员实现: float idimensions.width() { return widthinches; } public static void main() { // 声明类实例“mybox”: box mybox = new box(30.0f, 20.0f); // 声明接口实例“mydimensions”: idimensions mydimensions = (idimensions) mybox; // 打印出盒子的尺寸: /* 下列注释行将产生编译 错误,因为这些行试图从类实例访问显式实现的 接口成员: */ //system.console.writeline("length: {0}", mybox.length()); //system.console.writeline("width: {0}", mybox.width()); /* 从接口的实例调用方法, 以打印出盒子的尺寸: */ 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(); } // 声明实现以下两个接口的“box”类: // ienglishdimensions 和 imetricdimensions: class box : ienglishdimensions, imetricdimensions { float lengthinches; float widthinches; public box(float length, float width) { lengthinches = length; widthinches = width; } // 显式实现 ienglishdimensions 的成员: float ienglishdimensions.length() { return lengthinches; } float ienglishdimensions.width() { return widthinches; } // 显式实现 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#程序设计有所帮助。
下一篇: Android轻松实现多语言的方法示例