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

抽象类和接口的区别

作者: 燕冷之 | 来源:发表于2018-09-04 20:44 被阅读0次

抽象类和接口的区别

1.抽象类

  在了解抽象类之前先了解抽象方法,抽象方法是一种特殊的方法,它只有声明,没有具体的实现,声明格式为:

abstract void fun();

  抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法,那么这个类就是抽象类。因为抽象类含有未实现的方法,所以抽象类不能实现。所以抽象类是为了继承而存在的。如果定义了一个抽象类而不去实现它是没有任何意义的。
  包含抽象方法的类是抽象类,但是抽象类中还可以含有普通成员变量和成员方法。抽象类和普通类主要有三个不同:

  1. 抽象方法必须是public或者protected,默认缺省情况下是public,因为如果是private,则不能被子类继承。
  2. 抽象类不能实现,不能用来创建对象。
  3. 抽象类的子类必须实现父类的抽象方法,如果不能实现,则必须将子类也定义为抽象类。

  在其他方面,抽象类和普通类并没有区别。

2.接口

  接口是一种极度抽象的类型,接口中可以含有变量和方法,但是,接口中的变量会被隐式的指定为public static final变量,方法被隐式地指定为public abstract,也就是说,接口中的方法必须都是抽象方法。一个类如果遵循了某个接口,就必须实现接口中的所有方法。

3.接口和抽象类的一些区别

  抽象类是对事物的抽象,接口是对行为的抽象。继承是一个“是不是”的关系,接口是“有没有”的关系。如果一个类继承了某个抽象类,则子类必定是抽象类的种类,而接口是有没有,具备不具备的关系。

相关文章

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

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

  • 接口和抽象类

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

  • 抽象类和接口的区别

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

  • 接口和抽象类的区别

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

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

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

  • Java--接口和抽象类

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

  • 浅谈抽象类和接口的区别

    最近我看了一些接口和抽象类的区别,在这里我将我的所总结的内容分享给大家。 抽象类和接口的区别 1.抽象类使用abs...

  • Java 接口知识点

    接口的特性 函数式接口 抽象类和接口区别 Lambda表达式 java常用接口

  • Kotlin 零基础学习 接口和抽象类

    接口:接口就是暴露一种物体与另外一种物体沟通的方法 抽象类 接口 这么看接口和抽象类没什么区别,抽象类能干的接口也...

  • 抽象类和接口区别

    区别 接口 抽象类

网友评论

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

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