zoukankan      html  css  js  c++  java
  • C# abstract 和 interface 区别

    • 抽象类主要用来提供多个派生类可共享的基类的公共定义,它与非抽象类的主要区别如下:

    抽象类不能直接实例化。

    抽象类中可能包含抽象成员,但非抽象类中不可以。

    抽象类不能被密封。

    • 接口具有以下特征

    接口类类似于抽象基类,继承接口的任何非抽象类型都必须实现接口的所有成员。

    不能直接实例化接口。

    接口可以包含事件,索引器,方法和属性。

    接口不能不包含方法的实现。

    类和结构可从多个接口继承。

    接口自身可从多个接口继承。

    • 抽象类和接口的区别主要有一下几点:

    它们的派生类只能继承一个基类,既只能直接继承一个抽象类,但可以继承任意多个接口。

    抽象类中可以定义成员的实现,但接口中不可以。

    抽象类中可以包含字段,构造函数,析构函数,静态成员或常量等,接口中不可以。

    抽象类中的成员可以是私有的(只要他们不是抽象的),受保护的,内部的或受保护的内部成员(受保护的内部成员只能在应用程序的代码或派生类中访问),接口中的成员必须是公共的。

  • 相关阅读:
    运算优先级
    (5).plus(3).minus(2);
    画图
    函数的三种角色
    表格排序
    正则表达式
    call apply
    css文本属性和边框属性
    css颜色/字体/背景属性
    css选择器优先级及继承
  • 原文地址:https://www.cnblogs.com/houxt/p/11344953.html
Copyright © 2011-2022 走看看