美文网首页
类、抽象类、接口的区别

类、抽象类、接口的区别

作者: 咖A喱 | 来源:发表于2019-02-20 03:05 被阅读0次

概念

  • 类:当多个类中出现完全相同的功能时,将其向上抽取的形成的类(即定义出来用来描述事物共同特性的类)
  • 抽象类:当多个类中出现相同的功能,但是功能主体不一样,进行向上抽取形成的抽象类。抽象类是只抽取了功能的定义(即表象含义),但是不抽取功能主体,这时使用关键字abstract对功能进行修饰,以方便代码阅读。同时该类也必须使用abstract关键字修饰,以表示其不可以被实例化对象,因为这样是没有意义的


    抽象类例子
  • 接口:是一种规范和标准,他们可以约束类的行为,是一些方法特征的集合,但是没有方法的实现,可以理解成一个特殊的抽象类,抽象类中没有非抽象方法可以定义成接口,使用interface定义

特点

  • 抽象类:
    1. 抽象方法必须放在抽象类中
    2. 抽象类和抽象方法必须使用关键字abstract标识
    3. 抽象类不可以new对象,因为调用抽象方法没有意义
    4. 抽象类中的方法要被调用,必须使用子类重写所有的抽象方法,并new子类对象再调用
      如果子类没有重写所有的抽象类,那么子类也是一个抽象类
  • 接口:
    1. 使用interface定义
    2. 接口中常见定义:常量,抽象方法
    3. 接口中的成员都有固定修饰符:
      (1)常量:public static final
      (2)方法:public abstract
      对象和方法都是public
    4. 不可以实例化对象
    5. 接口是对外暴露的规则
    6. 接口是程序的拓展功能
    7. 接口可以多实现
    8. 接口可以降低耦合性

类和抽象类的区别:

  1. 抽象类中可以有抽象方法,也可以有非抽象方法,但类中只有非抽象方法。
  2. 抽象类不可以实例化,必须通过子类重写抽象方法,再实例化子类对象进行调用


    类和抽象类的区别

类和接口的区别:

  1. 抽象类有利于代码复用,接口利于代码的扩展和维护
  2. 用interface定义接口,用class定义类/抽象类
  3. 接口中只有抽象类方法
  4. 类和类之间的是继承(extends),不可以多继承,只能多层继承;而类和接口之间是实现(implements),可以多实现接口;接口与接口之间是继承(extends),但可以多继承

相关文章

  • 5.5-全栈Java笔记:接口的定义和使用

    接口interface 接口的作用 为什么需要接口?接口和抽象类的区别? 接口就是比“抽象类”还“抽象”的“抽象类...

  • 抽象类和接口区别

    区别 接口 抽象类

  • Java基础 (7) 抽象类和接口

    抽象特性的具体体现方式。1)抽象类区别和接口的区别2)抽象类的意义3)抽象类与接口的应用场景4)抽象类是否可以没有...

  • 夯实Java基础系列6:一文搞懂抽象类和接口,从基础到面试题,揭

    目录 抽象类介绍为什么要用抽象类一个抽象类小故事一个抽象类小游戏 接口介绍接口与类相似点:接口与类的区别:接口特性...

  • 抽象类和接口的区别

    以下两篇文章介绍了接口和抽象类的概念接口概念抽象类概念 抽象类和接口的区别: 抽象类:需要使用abstract关键...

  • 接口与抽象类区别

    接口与抽象类区别

  • 接口和抽象类

    接口和抽象类的区别? 接口(interface)和抽象类(abstract class)是支持抽象类定义的两种机制...

  • Java--接口和抽象类

    ·为什么需要接口?接口和抽象类的区别?  接口就是比“抽象类”还“抽象”的“抽象类”,可以更加规范的对子类进行约束...

  • 接口和抽象类的区别

    接口和抽象类有什么区别 你选择使用接口和抽象类的依据是什么? 接口和抽象类的概念不一样。接口是对动作的抽象,抽象类...

  • Android面试题

    接口和抽象类的区别: 抽象类只能单继承,接口能多实现(一个类只能继承一个抽象类,但是能实现多个接口) 抽象类是一个...

网友评论

      本文标题:类、抽象类、接口的区别

      本文链接:https://www.haomeiwen.com/subject/tezqyqtx.html