zoukankan      html  css  js  c++  java
  • JAVA 接口与抽象类(interface与abstract)的区别

    JAVA 接口与抽象类(interface与abstract)的区别

    相同点

    (1)都不能被实例化

    (2)接口的实现类或抽象类的子类都只有实现了接口或抽象类中的方法后才能实例化

    不同点

    (1)接口只有定义,不能有方法的实现,java 1.8中可以定义default方法体,而抽象类可以有定义与实现,方法可在抽象类中实现

    (2)实现接口的关键字为implements,继承抽象类的关键字为extends。一个类可以实现多个接口,但一个类只能继承一个抽象类。所以,使用接口可以间接地实现多重继承

    (3)接口强调特定功能的实现,而抽象类强调所属关系

    (4)接口成员变量默认为public static final,必须赋初值,不能被修改;其所有的成员方法都是public、abstract的。

        抽象类中成员变量默认default,可在子类中被重新定义,也可被重新赋值;抽象方法被abstract修饰,不能被private、static、synchronized和native等修饰,必须以分号结尾,不带花括号

  • 相关阅读:
    luogu_1414 又是毕业季II
    luogu_1372 又是毕业季I
    luogu_1313 计算系数
    luogu_1134 阶乘问题
    luogu_1514 引水入城
    luogu_1120 小木棍
    文件操作
    快速排序
    c oth
    ANSI C与C89、C99、C11区别差异
  • 原文地址:https://www.cnblogs.com/Yanss/p/12218181.html
Copyright © 2011-2022 走看看