什么是接口(Interface)?


Posted in 面试题 onFebruary 01, 2013
Java中的接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。
接口的两种含义:一,Java接口,Java语言中存在的结构,有特定的语法和结构;二,一个类所具有的方法的特征集合,是一种逻辑上的抽象。前者叫做“Java接口”,后者叫做“接口”。
在Java语言规范中,一个方法的特征仅包括方法的名字,参数的数目和种类,而不包括方法的返回类型,参数的名字以及所抛出来的异常。在Java编译器检 查方法的重载时,会根据这些条件判断两个方法是否是重载方法。但在Java编译器检查方法的置换时,则会进一步检查两个方法(分处超类型和子类型)的返还 类型和抛出的异常是否相同。
接口继承和实现继承的规则不同,一个类只有一个直接父类,但可以实现多个接口。
Java接口本身没有任何实现,因为Java接口不涉及表象,而只描述public行为,所以Java接口比Java抽象类更抽象化。
Java接口的方法只能是抽象的和公开的,Java接口不能有构造器,Java接口可以有public,静态的和final属性。
接口把方法的特征和方法的实现分割开来。这种分割体现在接口常常代表一个角色,它包装与该角色相关的操作和属性,而实现这个接口的类便是扮演这个角色的演员。一个角色由不同的演员来演,而不同的演员之间除了扮演一个共同的角色之外,并不要求其它的共同之处。

Tags in this post...

面试题 相关文章推荐
新东网科技Java笔试题
Jul 13 面试题
南京迈特望C/C++面试题
Jul 09 面试题
OLEDBConnection和SQLConnection有什么区别
May 31 面试题
.net工程师笔试题
Jun 09 面试题
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
Oct 29 面试题
Linux内核的同步机制是什么?主要有哪几种内核锁
Jan 03 面试题
Linux如何为某个操作添加别名
Mar 01 面试题
一些Solaris面试题
Mar 22 面试题
优纳科技软件测试面试题
May 15 面试题
解决方案设计综合面试题
Aug 31 面试题
AJAX都有哪些有点和缺点
Nov 03 面试题
Java基础知识面试题
Mar 25 面试题
你常见到的runtime exception
Sep 05 #面试题
PHP高级工程师面试问题推荐
Jan 18 #面试题
PHP开发工程师面试问题集锦
Nov 01 #面试题
一份比较全的PHP面试题
Jul 29 #面试题
Yahoo-PHP面试题4
May 05 #面试题
Yahoo-PHP面试题3
Jan 14 #面试题
Yahoo-PHP面试题2
Dec 06 #面试题
You might like
php+ajax实现图片文件上传功能实例
2014/06/17 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
Yii安装与使用Excel扩展的方法
2016/07/13 PHP
PHP中用Trait封装单例模式的实现
2019/12/18 PHP
thinkphp5.1 框架钩子和行为用法实例分析
2020/05/25 PHP
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
js打印纸函数代码(递归)
2010/06/18 Javascript
JavaScript实现将UPC转换成ISBN的方法
2015/05/26 Javascript
Javascript模仿淘宝信用评价实例(附源码)
2015/11/26 Javascript
微信小程序 Windows2008 R2服务器配置TLS1.2方法
2016/12/05 Javascript
JavaScript获取当前时间向前推三个月的方法示例
2017/02/04 Javascript
AngularJS实现的JSONP跨域访问数据传输功能详解
2017/07/20 Javascript
layui.js实现的表单验证功能示例
2017/11/15 Javascript
webpack 4.0.0-beta.0版本新特性介绍
2018/02/10 Javascript
Vue-cli项目获取本地json文件数据的实例
2018/03/07 Javascript
webuploader实现上传图片到服务器功能
2018/08/16 Javascript
jquery获取img的src值实例介绍
2019/01/16 jQuery
JavaScript相等运算符的九条规则示例详解
2019/10/20 Javascript
vue 解决兄弟组件、跨组件深层次的通信操作
2020/07/27 Javascript
Python3中常用的处理时间和实现定时任务的方法的介绍
2015/04/07 Python
Python 自动刷博客浏览量实例代码
2017/06/14 Python
Python3 中文文件读写方法
2018/01/23 Python
python 把文件中的每一行以数组的元素放入数组中的方法
2018/04/29 Python
python3利用ctypes传入一个字符串类型的列表方法
2019/02/12 Python
详解python读取image
2019/04/03 Python
Pytorch上下采样函数--interpolate用法
2020/07/07 Python
中国一家综合的外贸B2C电子商务网站:DealeXtreme(DX)
2020/03/10 全球购物
项目经理岗位职责
2013/11/11 职场文书
专营店会计助理岗位职责
2013/11/29 职场文书
竞聘书怎么写,如何写?
2014/03/31 职场文书
初中教师个人总结
2015/02/10 职场文书
《追风筝的人》:人心中的成见是座大山,但请不忘初心
2019/11/15 职场文书
Promise面试题详解之控制并发
2021/05/14 面试题
mysql升级到5.7时,wordpress导数据报错1067的问题
2021/05/27 MySQL
python中__slots__节约内存的具体做法
2021/07/04 Python
ssh服务器拒绝了密码 请再试一次已解决(亲测有效)
2022/08/14 Servers