zoukankan      html  css  js  c++  java
  • 接口

    将一个对象看成多个类型的能力成为多继承(multiple inheritance)。CLR支持单实现继承和多接口继承。
    接口仅是包含着一组虚方法的抽象类型,其方法包括名称、参数、和返回值类型,不能包括任何实现。
    接口中也可以定义时间、无参属性以及含参属性(索引器),还允许包含静态方法、静态字段、常数、以及静态构造器,Csharp编译器阻止我们在一个接口中定义任何静态成员,另外CLR也不允许接口中包含任何的实例字段或实例构造器。

    接口的非静态方法总被认为时共有的虚方法。在Csharp中,如果一个实现类型实现接口方法时省略了virtual关键字,那么该方法将被认是一个密封(sealed)的虚方法。
    一个接口不能继承其他类型的实现,但是可以继承其他接口。

    和引用类型相似,值类型也可以实现0个或多个接口,但是当我们将一个值类型实例转型为一个接口类型时,该值类型将被装箱。

    基类型和接口类型的选择:
    IS-A与CAN-DO关系: IS-A基类型,CAN-DO接口类型
    易用性   :基类型使用方便,接口类型必须实现
    一致的实现:
    版本
  • 相关阅读:
    一个列表如何根据另一个列表进行排序(数组的相对排序)
    汉诺塔问题
    python面向对象基础
    python爬虫
    软件开发目录规范
    python--->包
    编译python文件
    python文件的俩种用途
    python模块的搜索路径
    python 循环导入的问题
  • 原文地址:https://www.cnblogs.com/songshuqun/p/748159.html
Copyright © 2011-2022 走看看