• 技术文章 >java >java基础

    java基础:接口和类如何区分?

    小妮浅浅小妮浅浅2020-12-24 17:12:27原创2825

    有些小伙伴在使用的时候,把抽象类和接口进行了混淆,因为它们都和类有所联系。考虑到初学java对于定义和作用的理解不够深刻,又或者在概念上没有系统的对比过,这里小编把它们的概念整理出来,并进行了分析对比。还没有弄清楚它们之间区别的小伙伴,可以看看下面的内容。

    1.定义不同

    类是具有相同属性和服务的一组对象的集合。为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务(功能)两个主要部分。在面向对象的编程语言中,类是一个独立的程序单位,应该有一个类名并包括属性说明和服务说明两个主要部分。

    接口

    接口(Interface),在JAVA编程语言中是一个抽象类型,是抽象方法的集合(接口里面都是抽象方法),接口通常以interface来声明。一个类通过继承接口的方式,从而来继承接口的抽象方法。

    2.作用区别,以抽象类为例

    1)语法层面上

    接口中不能有 public 和 protected 修饰的方法,抽象类中可以有。

    接口中的变量只能是隐式的常量,抽象类中可以有任意类型的变量。

    一个类只能继承一个抽象类,但却可以实现多个接口。

    2)设计层面上

    抽象类是对类的一种抽象,继承抽象类的类和抽象类本身是一种 is-a 的关系。

    接口是对类的某种行为的一种抽象,接口和类之间并没有很强的关联关系,所有的类都可以实现 Serializable 接口,从而具有序列化的功能。

    二者的选:

    以上就是在java中关于接口和类的区分,鉴于类的模块比较大,我们挑选了具有代表性的抽象类进行比较,希望对大家有所帮助。更多Java学习指路:js教程

    专题推荐:java接口和类区分
    上一篇:接口如何在java中使用? 下一篇:多态如何在java接口中实现?

    相关文章推荐

    • protected如何在java里使用?• default如何在java中访问?• java基础之包是什么?有哪些包?• java中如何创建包?• 在java中导入包出错怎么办?• 接口如何在java中使用?

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网