码迷,mamicode.com
首页 > 其他好文 > 详细

接口使用

时间:2018-10-05 13:57:48      阅读:138      评论:0      收藏:0      [点我收藏+]

标签:deb   存在   构造   void   自动   lin   一个   fun   关键字   

接口:

1.属于任何类或结构的一组相关功能

2.定义:interface关键字定义,可由方法,属性,事件,索引器这四种成员类型的任意组合组成

例子:interface EatBehairor{}

接口的特征:


1、接口类似于抽象基类,不能直接实例化接口;接口中的方法都是抽象方法,实现接口的任何非抽象类型都必须实现接口的所有成员。

2、接口不能包含常量、字段、运算符、实例构造函数、析构函数或类型、不能包含静态成员。

3、接口成员是自动公开的,且不能包含任何访问修饰符。

4、接口自身可从多个接口继承,类和结构可继承多个接口,但接口不能继承类。

例子:

interface IProgram
    {
        void Fun();
    }
    class Program:IProgram
    {
         //显式实现接口成员
        void IProgram。Fun()
        {
            Console.WriteLine("I am Fun.");
        }
        staticvoid Main(string[] args)
        {
            IProgram p =new Program();  //声明一个接口实例,但不是对接口进行实例化
            p.Fun();
            Console.Read();
        }
    }

5.一般情况,当类或者结构要实现的是单个接口,可以使用隐式实现。

6.如果类或者结构继承了多个接口且接口中具有相同名称成员时,就要用到显式实现,当显式实现方式存在时,隐式实现方式就失效了。

class Program : IProgram, IAProgram
    {
            
void IProgram.Fun()  //显式实现接口IProgram         {             Console.WriteLine("I am IProgram Fun.");         }         void IAProgram.Fun()  //显式实现接口IAProgram         {             Console.WriteLine("I am IAProgram Fun.");         } }
class Program : IProgram, IAProgram
    {
    
        void Fun()                //隐式继承接口失效
        {
             Debug.Log("Fun")
        }
        void IProgram.Fun()  //显式实现接口IProgram
        {
            Console.WriteLine("I am IProgram Fun.");
        }
        void IAProgram.Fun()  //显式实现接口IAProgram
        {
            Console.WriteLine("I am IAProgram Fun.");
        }
}            

 

接口使用

标签:deb   存在   构造   void   自动   lin   一个   fun   关键字   

原文地址:https://www.cnblogs.com/blog-196/p/9744582.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!