abstract class和interface有什么区别


Posted in 面试题 onAugust 04, 2013
声明方法的存在而不去实现它的类被叫做抽象类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract 类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。
接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof 运算符可以用来决定某对象的类是否实现了接口。

Tags in this post...

面试题 相关文章推荐
mysql_pconnect()和mysql_connect()有什么区别
May 25 面试题
HashMap和Hashtable的区别
May 18 面试题
介绍一下Java的安全机制
Jun 28 面试题
用你熟悉的语言写一个连接ORACLE数据库的程序,能够完成修改和查询工作
Jun 11 面试题
写一个方法1000的阶乘
Nov 21 面试题
写一个用矩形法求定积分的通用函数
Nov 08 面试题
了解AppleTalk协议吗
Apr 01 面试题
接口可以包含哪些成员
Sep 30 面试题
使用C#编写创建一个线程的代码
Jan 22 面试题
How TDD works
Sep 30 面试题
Python如何定义一个函数
Sep 01 面试题
Java面试题冲刺第十六天--消息队列
Aug 07 面试题
金鑫耀Java笔试题
Sep 06 #面试题
什么是继承
Dec 07 #面试题
创立科技Java面试题
Nov 29 #面试题
同步和异步有何异同,在什么情况下分别使用他们
Apr 09 #面试题
重写子类方法时,抛出异常的书写注意事项
Oct 17 #面试题
深圳茁壮笔试题
May 28 #面试题
关键字throw与throws的用法差异
Nov 22 #面试题
You might like
图解找出PHP配置文件php.ini的路径的方法
2014/08/20 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
2016/03/05 PHP
详解php中serialize()和unserialize()函数
2017/07/08 PHP
php array_chunk()函数用法与注意事项
2019/07/12 PHP
2007/12/23更新创意无限,简单实用(javascript log)
2007/12/24 Javascript
基于jquery实现的可编辑下拉框实现代码
2014/08/02 Javascript
javascript模拟post提交隐藏地址栏的参数
2014/09/03 Javascript
详细解读Jquery各Ajax函数($.get(),$.post(),$.ajax(),$.getJSON())
2016/08/15 Javascript
React组件之间的通信的实例代码
2017/06/27 Javascript
Vue.js在数组中插入重复数据的实现代码
2017/11/17 Javascript
async/await地狱该如何避免详解
2018/05/10 Javascript
Seajs源码详解分析
2019/04/02 Javascript
vuex实现数据状态持久化
2019/11/11 Javascript
JavaScript数组类型Array相关的属性与方法详解
2020/09/08 Javascript
JS创建自定义对象的六种方法总结
2020/12/15 Javascript
[53:10]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs VG 第一场
2018/04/11 DOTA
python基础教程之基本内置数据类型介绍
2014/02/20 Python
Python实现比较两个列表(list)范围
2015/06/12 Python
django 使用 request 获取浏览器发送的参数示例代码
2018/06/11 Python
python 正确保留多位小数的实例
2018/07/16 Python
Python操作json的方法实例分析
2018/12/06 Python
一个可以套路别人的python小程序实例代码
2019/04/09 Python
pandas对dataFrame中某一个列的数据进行处理的方法
2019/07/08 Python
Pytorch to(device)用法
2020/01/08 Python
Python使用正则表达式实现爬虫数据抽取
2020/08/17 Python
详解使用canvas保存网页为pdf文件支持跨域
2018/11/23 HTML / CSS
实例教程 HTML5 Canvas 超炫酷烟花绽放动画实现代码
2014/11/05 HTML / CSS
澳大利亚有机化妆品网上商店:The Well Store
2020/02/20 全球购物
空字符串(“”)和null的区别
2012/11/13 面试题
师范毕业生求职自荐信
2013/09/25 职场文书
特色蛋糕店创业计划书
2014/01/28 职场文书
初二物理教学反思
2014/01/29 职场文书
党的群众路线教育实践活动对照检查材料范文
2014/09/24 职场文书
离婚协议书怎么写2014
2014/09/30 职场文书
Python爬虫入门案例之回车桌面壁纸网美女图片采集
2021/10/16 Python
彩虹社八名人气艺人全新周边限时推出,性转女装男装一次拥有!
2022/04/01 日漫