What's the difference between an interface and abstract class? (接口与抽象类有什么区别)


Posted in 面试题 onOctober 29, 2012

接口用于规范,抽象类用于共性。接口中只能声明方法,属性,事件,索引器。而抽象类中可以有方法的实现,也可以定义非静态的类变量。抽象类是类,所以只能被单继承,但是接口却可以一次实现多个。抽象类可以提供某些方法的部分实现,接口不可以.抽象类的实例是它的子类给出的。接口的实例是实现接口的类给出的。再抽象类中加入一个方法,那么它的子类就同时有了这个方法。而在接口中加入新的方法,那么实现它的类就要重新编写(这就是为什么说接口是一个类的规范了)。接口成员被定义为公共的,但抽象类的成员也可以是私有的、受保护的、内部的或受保护的内部成员(其中受保护的内部成员只能在应用程序的代码或派生类中访问)。此外接口不能包含字段、构造函数、析构函数、静态成员或常量。


Tags in this post...

面试题 相关文章推荐
PHP如何与mysql建立链接
May 05 面试题
为什么使用接口?
Aug 13 面试题
介绍一下Java的安全机制
Jun 28 面试题
某个公司的Java笔面试题
Mar 11 面试题
Oracle里面常用的数据字典有哪些
Feb 14 面试题
什么是Oracle的后台进程background processes?都有哪些后台进程?
Apr 26 面试题
.NET程序员的几道面试题
Jun 01 面试题
什么叫应用程序域?什么是托管代码?什么是强类型系统?什么是装箱和拆箱?什么是重载?CTS、CLS和CLR分别作何解释?
May 23 面试题
C#如何允许一个类被继承但是避免这个类的方法被重载?
Feb 24 面试题
linux面试题参考答案(7)
Jul 24 面试题
AssertionError 跟一下那个类是 “is – a”的关系
Feb 21 面试题
Hibernate持久层技术
Dec 16 面试题
亿阳信通股份有限公司C#笔试题
Dec 06 #面试题
C#面试常见问题
Feb 25 #面试题
What's the difference between deep copy and shallow copy? (深拷贝与浅拷贝有什么区别)
Nov 10 #面试题
override和overload的区别
Mar 09 #面试题
武汉瑞得软件笔试题
Oct 27 #面试题
What's the difference between Debug and Trace class? (Debug类与Trace类有什么区别)
Sep 10 #面试题
什么是索引指示器
Aug 20 #面试题
You might like
用PHP实现WEB动态网页静态
2006/10/09 PHP
PHP字符串word末字符实现大小写互换的方法
2014/11/10 PHP
php解析xml 的四种简单方法(附实例)
2016/07/11 PHP
获取Javscript执行函数名称的方法
2006/12/22 Javascript
javascript showModalDialog,open取得父窗口的方法
2010/03/10 Javascript
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
js处理php输出时间戳对不上号的解决方法
2014/06/20 Javascript
jQuery.parseJSON(json)将JSON字符串转换成js对象
2014/07/27 Javascript
jQuery实现的感应鼠标悬停图片色彩渐显效果
2015/03/03 Javascript
iScroll中事件点击触发两次解决方案
2015/03/11 Javascript
javascript实现简单的贪吃蛇游戏
2015/03/31 Javascript
IE8下jQuery改变png图片透明度时出现的黑边
2015/08/30 Javascript
基于jQuery实现拖拽图标到回收站并删除功能
2015/11/25 Javascript
Spring MVC中Ajax实现二级联动的简单实例
2016/07/06 Javascript
最好用的Bootstrap fileinput.js文件上传组件
2016/12/12 Javascript
slideToggle+slideup实现手机端折叠菜单效果
2017/05/25 Javascript
解决vue.js this.$router.push无效的问题
2018/09/03 Javascript
JavaScript常见鼠标事件与用法分析
2019/01/03 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
详解如何在Vue项目中导出Excel
2019/04/19 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
[03:57]《不朽》——2015DOTA2国际邀请赛—中国军团出征主题曲MV
2015/07/15 DOTA
Django中Model的使用方法教程
2018/03/07 Python
python flask中静态文件的管理方法
2018/03/20 Python
python开发入门——set的使用
2020/09/03 Python
纯CSS3实现滚动的齿轮动画效果
2014/06/05 HTML / CSS
你们项目是如何进行变更控制的
2015/08/26 面试题
商务英语专业毕业生自荐信
2013/11/05 职场文书
学习十八大坚定理想信念心得体会
2014/03/11 职场文书
2014年社区宣传工作总结
2014/12/02 职场文书
2015年招聘工作总结
2014/12/12 职场文书
信访维稳承诺书
2015/05/04 职场文书
个人收入证明格式
2015/06/24 职场文书
python中Matplotlib绘制直线的实例代码
2021/07/04 Python
JS实现数组去重的11种方法总结
2022/04/04 Javascript
Redis 报错 error:NOAUTH Authentication required
2022/05/15 Redis