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

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

    抽象类不能直接实例化。

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

    抽象类不能被密封。

    • 接口具有以下特征

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

    不能直接实例化接口。

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

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

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

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

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

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

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

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

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

  • 相关阅读:
    1.Go环境安装
    IDEA启动Tomcat控制台中文显示乱码
    专注的含义
    翻出一封古老的信
    若有所思
    B+Tree与B-Tree 的区别
    Redis集群 什么是slots
    夜深人静,听雨
    随心所想
    本性可以改吗
  • 原文地址:https://www.cnblogs.com/houxt/p/11344953.html
Copyright © 2011-2022 走看看