zoukankan      html  css  js  c++  java
  • 接口和抽象类的区别

    1.接口可以多继承,抽象类不能实现多继承。

    2.接口只能定义抽象规则,抽象类既能定义抽象规则也可以提供已经实现的成员。

    3.接口是一组行为规范,抽象类是一个不完全的类,着重于族的概念。

    4.接口支持回调,抽象类不能实现回调,因为继承不支持。

    5.接口只包含方法,属性,索引器,事件的签名,但不能定义字段和包含实现的方法,抽象类可以定义属性,字段,包含有实现的方法。

    6.接口可以作用于值类型和引用类型,抽象类只能作用于引用类型(如:Struct只能继承接口)

    7.抽象类应主要用于关系密切的对象,而接口则是适合为不相关的类提供通用功能。

    8.接口着重于Can——Do关系类型,抽象类则偏重于IS——A式关系

    9.接口多定义对象的行为,抽象类多定义对象的属性

    10.如果要设计小而简练的功能块,则使用接口,如果要设计大的功能单元,则使用抽象类。

    11.接口对应的是面向对象编程思想的重要原则:面向接口编程,

         抽象类对应的则是设计模式的精髓:面向抽象编程

    PS:抽象类的子类继承可以推迟,而接口不可以。

  • 相关阅读:
    String
    Xposed源码编译踩坑实录
    Hello 博客园
    HDU 1430 关系映射 + 打表 .
    HDU 1430 关系映射 + 打表 .
    hdu1043 经典的八数码问题 逆向bfs打表 + 逆序数
    hdu1043 经典的八数码问题 逆向bfs打表 + 逆序数
    hdu 1044 BFS(压缩图)+DFS
    hdu 1044 BFS(压缩图)+DFS
    hdu3338 最大流
  • 原文地址:https://www.cnblogs.com/boke1/p/11046990.html
Copyright © 2011-2022 走看看