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

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

    抽象类不能直接实例化。

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

    抽象类不能被密封。

    • 接口具有以下特征

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

    不能直接实例化接口。

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    java线性表之顺序表实现
    Page Rank 算法
    逻辑回归梯度下降推导
    逻辑回归再理解
    最大似然估计的再理解
    DeepLearning中CRF计算原理
    评价指标-精确率、召回率、ROC曲线
    基于贝叶斯平均的新词发现算法
    统计学习方法概论
    多模字符串匹配算法-Aho–Corasick
  • 原文地址:https://www.cnblogs.com/houxt/p/11344953.html
Copyright © 2011-2022 走看看