abstract class和interface有什么区别?


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

Tags in this post...

面试题 相关文章推荐
求两个数的乘积和商数,该作用由宏定义来实现
Mar 13 面试题
在SQL Server中创建数据库主要有那种方式
Sep 10 面试题
上海天奕面试题笔试题
Apr 19 面试题
程序员机试试题汇总
Mar 07 面试题
简述DNS进行域名解析的过程
Dec 02 面试题
介绍一下MD5加密算法
Nov 12 面试题
简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程
Apr 17 面试题
软件测试笔试题
Oct 25 面试题
百度JavaScript笔试题
Jan 15 面试题
XML文档定义有几种形式?它们之间有何本质区别?解析XML文档有哪几种方式?
Jan 12 面试题
什么是ESB?请介绍一下ESB?
May 27 面试题
SOA面试题:如何在SOA中实现松耦合
Jul 21 面试题
Java面试题及答案
Sep 08 #面试题
List、Map、Set三个接口,存取元素时,各有什么特点?
Sep 27 #面试题
xml有哪些解析技术?区别是什么
Apr 26 #面试题
说出ArrayList,Vector, LinkedList的存储性能和特性
Jan 04 #面试题
应用服务器有那些
Jan 19 #面试题
Java中实现多态的机制是什么?
Dec 07 #面试题
同步和异步有何异同,在什么情况下分别使用他们?举例说明
Feb 27 #面试题
You might like
给php新手谈谈我的学习心得
2007/02/25 PHP
关于file_get_contents返回为空或函数不可用的解决方案
2013/06/24 PHP
PHP 通过Socket收发十六进制数据的实现代码
2013/08/16 PHP
解析WordPress中的post_class与get_post_class函数
2016/01/04 PHP
PHP带节点操作的无限分类实现方法详解
2016/11/09 PHP
Docker配置PHP开发环境教程
2016/12/21 PHP
PHP jpgraph库的配置及生成统计图表:折线图、柱状图、饼状图
2017/05/15 PHP
PHP children()函数讲解
2019/02/03 PHP
Javascript数组的排序 sort()方法和reverse()方法
2012/06/04 Javascript
js调用iframe实现打印页面内容的方法
2014/03/04 Javascript
jQuery移除tr无效的解决方法(tr是动态添加)
2014/09/22 Javascript
详解JavaScript ES6中的模板字符串
2015/07/28 Javascript
JavaScript实现瀑布流布局
2020/06/28 Javascript
浅谈js中的变量名和函数名重名
2017/02/13 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
原生js轮播特效
2017/05/18 Javascript
微信小程序仿微信运动步数排行(交互)
2018/07/13 Javascript
从零开始学习搭建React脚手架项目
2018/08/23 Javascript
详解如何使用微信小程序云函数发送短信验证码
2019/03/13 Javascript
基于javascript原生判断DOM是否加载完毕
2020/10/14 Javascript
python pandas dataframe 按列或者按行合并的方法
2018/04/12 Python
PyQt实现界面翻转切换效果
2018/04/20 Python
使用Bazel编译TensorBoard教程
2020/02/15 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
Python semaphore evevt生产者消费者模型原理解析
2020/03/18 Python
python 实现单例模式的5种方法
2020/09/23 Python
HTML5制作3D爱心动画教程 献给女友浪漫的礼物
2014/11/05 HTML / CSS
苹果音乐订阅:Apple Music
2018/08/02 全球购物
西班牙用户之间买卖视频游戏的平台:Wakkap
2020/03/21 全球购物
餐饮业会计岗位职责
2013/12/19 职场文书
本科生求职信
2014/06/17 职场文书
全国爱眼日活动总结
2015/02/27 职场文书
2015年毕业生个人自荐书
2015/03/24 职场文书
小学教学工作总结2015
2015/05/13 职场文书
2016年少先队活动总结
2016/04/06 职场文书
Nginx配置使用详解
2022/07/07 Servers