Java中abstract class和interface有什么区别

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

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

interface和abstract 的区别和相同点

在Java语言中,abstract class和interface是支持抽象类定义的两种机制。 不能创建abstract类的实例,然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实...
  • Mandypan
  • Mandypan
  • 2016年08月06日 19:30
  • 5691

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

很久没有看到如此精辟的文章了!作者写得实在太好了!正在学JAVA或者想了解抽象类与接口的朋友,绝对不可错过!本人极力推荐! OOP中接口与抽象类的区别 Java语言接口与继承的本质 深入理解接口...
  • zgrjkflmkyc
  • zgrjkflmkyc
  • 2013年09月30日 21:08
  • 5862

抽象类(abstract class)和接口(Interface)的区别

前言 抽象类(abstract class)和接口(Interface)是Java语言中对于抽象类定义进行支持的两种机制,赋予了Java强大的面向对象能力。二者具有很大的相似性,甚至可以相互替换,因...
  • aptentity
  • aptentity
  • 2017年04月01日 11:53
  • 1216

c#中abstract与class的区别

http://blog.163.com/shirx2005@126/blog/static/8176490620091024102254107/
  • conganguo
  • conganguo
  • 2014年10月05日 21:01
  • 875

抽象类(abstract class)与接口(interface)的异同

抽象类:包含抽象方法的类就是抽象类 接口:指抽象方法的集合,方法不包含方法体相同点: 都不能被实例化 接口的实现类或者抽象类的子类都必须实现了接口或抽象类中的方法后才可以被实例化 不同点: 接口只有...
  • aym_fuhong
  • aym_fuhong
  • 2016年09月05日 20:07
  • 1718

Java之抽象(abstract)类、接口(interface)的用法总结

导读: 1、什么是抽象类(abstract)? 2、如何定义抽象类(abstract)? 3、抽象类(abstract)的作用? 4、何为接口?接口和类的区别? 5、怎么区分抽象类和接口? ...
  • dtjiawenwang88
  • dtjiawenwang88
  • 2017年06月14日 20:26
  • 523

java为什么要用abstract与Interface?

八.抽象类 有些类的实例不存在,但他代表一类不同对象的集合。如Animal类,没有动物叫Animal,但Animal尤其子类Dog,Cat等等。 抽象除了被继承外,没有值和用途 抽象的方法:抽象...
  • neverlesspray
  • neverlesspray
  • 2016年08月01日 13:59
  • 703

JAVA基础再回首(七)——final关键字、抽象类abstract、接口interface、权限修饰符、导包

JAVA基础再回首(七)——final关键字、抽象类abstract、接口interface、权限修饰符、导包 没有到不了的明天。 嬉皮笑脸面对人生的难。 相信自己,不然你什么都做不了...
  • m366917
  • m366917
  • 2016年08月03日 21:04
  • 1886

通过案例理解Abstract类和interface类

IBM上的一篇文章 看了之后深受启发。         看上面一篇可以理解的就好了,我这里是按照自己的理解,啰嗦的进行一下表述。           如果是偶尔阅读到这里,这个不算,我们假设你是主动搜...
  • shareye1992
  • shareye1992
  • 2016年07月07日 17:22
  • 761

抽象类abstract和接口interface的区别与深入思考

在以前的编程过程中,经常对abstract和interface混淆,相信很多初学者都有这样的困惑,也问过很多经验丰富的程序员,他们也不能清楚地说出个所以然来。经过自己的思考,想到了一种比较形象的方式来...
  • wujiaxian
  • wujiaxian
  • 2014年10月11日 11:32
  • 2791
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Java中abstract class和interface有什么区别
举报原因:
原因补充:

(最多只允许输入30个字)