zoukankan      html  css  js  c++  java
  • C#

     1 using System;
     2 using System.Collections.Generic;
     3 using System.Linq;
     4 using System.Text;
     5 
     6 /*----------------------------------------------------------------------------
     7  * 显式实现接口:
     8  *      1. 一个类继承了两个以上的接口
     9  *      2. 接口中存在相同名称的方法
    10  *      3. 通过【接口.方法()】格式在类中显示实现
    11  *      4. 将类的实例化的对象传递给不同的接口对象, 则调用
    12  *          的是不同接口下各自的方法
    13  *      5. 类中显式实现接口的方法前不能使用任何修饰词
    14  *      6. 显示实现的成员都默认为私有, 即不能通过类实例化
    15  *          对象在类外部直接调用, 正确的访问方式是通过类对
    16  *          像显式的转换为对应的接口, 通过接口来访问方法
    17 -----------------------------------------------------------------------------*/
    18 namespace 接口_显式接口实现
    19 {
    20     // 定义接口: IChineseGreeting
    21     interface IChineseGreeting
    22     {
    23         void SayHello();
    24     }
    25 
    26     // 定义接口: IAmericanGreeting
    27     interface IAmericanGreeting
    28     {
    29         void SayHello();
    30     }
    31 
    32     // 实现接口: Speaker类
    33     public class Speaker : IChineseGreeting, IAmericanGreeting
    34     {
    35         // 接口: IChineseGreeting 显示实现
    36         void IChineseGreeting.SayHello()
    37         {
    38             Console.WriteLine("你好!");
    39         }
    40 
    41         // 接口: IAmericanGreeting 显示实现
    42         void IAmericanGreeting.SayHello()
    43         {
    44             Console.WriteLine("Hello!");
    45         }
    46     }
    47 
    48     class Program
    49     {
    50         static void Main(string[] args)
    51         {
    52             Speaker speaker = new Speaker();
    53             
    54             IChineseGreeting iChineseG = (IChineseGreeting)speaker;
    55             iChineseG.SayHello();           // 输出【"你好"】
    56 
    57             IAmericanGreeting iAmericanG = (IAmericanGreeting)speaker;
    58             iAmericanG.SayHello();        // 输出【"Hello"】
    59 
    60             Console.ReadLine();
    61         }
    62     }
    63 }
  • 相关阅读:
    如何才算掌握JavaSE?
    JAVA学习之路:不走弯路,就是捷径
    让IT人远离慢性疲劳,长时间操作电脑需要养成的几个好习惯
    成为Java高手的25个学习目标非常经典
    程序员如何走到金字塔最高层
    jQuery强大的jQuery选择器 (详解)[转]
    不学必悔
    nginx的核心配置
    java中使用MemCached
    java 使用反射中的几个方法区别
  • 原文地址:https://www.cnblogs.com/DuanLaoYe/p/5359255.html
Copyright © 2011-2022 走看看