zoukankan      html  css  js  c++  java
  • 4.接口和抽象类

    前言:一般面试的时候都会被问到接口和抽象类的区别,所以想深入了解一下

     4.1 抽象类

            4.1.1 抽象类使用abstract修饰

            4.1.2 抽象类不能被实例化

            4.1.3 含有抽象方法的类是抽象类(被abstract修饰的方法),必须使用abstract修饰

            4.1.4 抽象类可以含有抽象方法,也可以不包含抽象方法

            4.1.5 如果一个子类实现了一个父抽象类的所有抽象方法,那么该子类就可以不必是抽象类,否则就是抽象类

            4.1.6 抽象类中的抽象方法只有方法体,没有实现

      4.2 接口

             4.2.1 接口使用interface修饰

             4.2.2 接口不能被实例化

             4.2.3 一个类只能继承一个类,但是可以实现多个接口

             4.2.4 接口内的方法都是抽象方法

             4.2.5 接口内不能含有静态方法

      4.3 区别

             4.3.1 接口可以被多个子类继承,但是抽象类只能被一个子类继承

             4.3.2 接口只定义方法,不能实现,而抽象类可以实现部分方法象方法。     

      4.4 接口和抽象类的实质

             抽象类是对对象本身的抽象,接口是对对象动作的抽象,就比如坦克游戏,抽象类指出这是一个游戏,而接口指出这个游戏的动作(射击、移动、掉血),所以接口可以被多个子类继承(一个游戏可以有多个动作),而抽象类只能一个子类继承(只能是游戏)。

  • 相关阅读:
    UVA11584 划分成回文串
    UVA1220Party at Hali-Bula(树的最大独立集 + 唯一性判断)
    BUAA1389愤怒的DZY(最大值最小化)
    九度1502 最大值最小化问题
    App(4.25)
    App(4.24)
    App(4.23)
    App(4.22)
    学习进度条(八)
    App(4.21)
  • 原文地址:https://www.cnblogs.com/mokpiet/p/13655903.html
Copyright © 2011-2022 走看看