美国上市公司,专注Java培训21年

abstract class和interface有什么区别?


声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。


【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • Java面试题大全带答案(汇总)
    Java面试题大全带答案(汇总)
    达内java培训班汇总常见的42种Java面试题和答案Java面试题大全带答案(汇总) 详情>>

    2016-12-07

  • Java开发面试题汇总(这一篇就够了)
    Java开发面试题汇总(这一篇就够了)
    感谢大家阅读由java企业面试题分享的“Java面试宝典-这一篇就够了”希望对大家有所帮助 详情>>

    2017-12-18

  • 中高级Java面试题及答案解析
    中高级Java面试题及答案解析
    Java程序员面试是必过的一关,如果能在面试前做好充足的准备,就离高薪更近一些,本文总结Java程序员常见面试题及答案,快来学学吧。 详情>>

    2018-04-17

  • 程序员面试前必做的准备工作
    程序员面试前必做的准备工作
    俗话说,磨刀不误砍柴工,做好面试前的准备工作可以帮助大家更好的应对面试官的问题以及面试中的突发情况。那么面试前我们都有哪些要做的准备工作呢?达妹和大家一起盘点一下: 详情>>

    2018-05-30

  • Java开班时间

    收起