zoukankan      html  css  js  c++  java
  • C# interface

          我们学习了interface,即接口,其与抽象类有点像,但是他们也有一些区别,比如类不能多重继承但是接口却可以多重继承。

          接口只包含方法、委托或事件和属性的签名(接口包含的成员)、不能包含字段(因为字段是包含数据的)。方法的实现是“继承”接口的类中完成的;接口可以包含的成员的访问修饰符只能且默认为public; 一个接口可以从一个或多个基接口继承; 接口类似于抽象基类:继承接口的任何非抽象类型都必须实现接口的所有成员; 当基类型列表包含基类和接口时,基类必须是列表中的第一项; 实现接口的类可以显式实现该接口的成员,显示实现的成员不能通过类实例访问,而只能通过接口实例访问; 类和结构可以按照类继承基类或结构的类似方式继承接口;但注意: 类或结构可继承多个接口; 类或结构继承接口时,仅继承方法名称和签名,因为接口本身不包含实现; 接口和接口成员是抽象的(但不用写出abstract关键字);接口不提供默认实现;接口是一种规划(为你定义出一系列的规则和任务,但不去实现它)

    下面给一个interface的例子:

    interface 
    SampInterface1 

        string  
        this[ int index] 

        { 
            get; 
            set 
        } 


        event EventHandler Event; 
        void  Find( int value ); 

        //注意此处没有 
        { 
        } 
        string Po 
        int 

        { 
            get; 
            set 
        } 

    上面的接口定义了一个索引this,一个实践Event,一个方法Find和一个属性Point.

    下面的代码也很好的说明了这一点。

    public interface SampIneterface:SampIneterface1{  
    pravite  int a=1; 

    void find (int value) 

    a+=value; 


    event EventHandler Event; 
    protected void onEvent() 


    if(Event=null) 
    {return Event(this.System.EventAgrs.Empty;)} 


    }

     

  • 相关阅读:
    符号解析
    编译器与链接器的功能
    hook的本质就是在本原可执行文件中加东西
    Mac-O文件加载的全过程(一)
    系统在执行可执行文件几个过程
    动态库连接器–动态库链接信息(Mach-O文件格式和程序从加载到执行过程)
    load 调用的顺序
    iPhone Mach-O文件格式与代码签名
    Redis正确使用的十个技巧
    redis slowlog
  • 原文地址:https://www.cnblogs.com/lixuntaohaolihai/p/4477668.html
Copyright © 2011-2022 走看看