类如何去实现接口


Posted in 面试题 onDecember 19, 2013
接口规定了“原型”,具体实现则由类来完成,格式如下:
[修饰符] class 类名[extends 基类] implements 接口1[,接口2,…]{
…… //包含对接口的所有方法的实现
}
说明:
一个类实现接口时,必须实现接口中的所有抽象方法;否则,该类应声明为抽象类;
类在实现接口的抽象方法时,必须使用完全相同的方法头,例如:接口中的方法声明时通常省略public修饰符,但在实现抽象方法时必须显式书写public修饰符;
一个类可以实现多个接口,从而达到多重继承的目的;
多个无关的类可以实现同一个接口;
与抽象类相比,使用接口的好处是不相关类实现的相同行为,而不需要考虑这些类之间的层次关系。
例如:
//接口应用例子
interface Runner { //接口1
public void run();
}
interface Swimmer { //接口2
public void swim();
}
abstract class Animal { //抽象类,去掉关键字abstract是否可行?
public abstract void eat();
}

class Person extends Animal implements Runner,Swimmer { //继承类,实现接口
public void run() {
System.out.println("我是飞毛腿,跑步速度极快!");
}
public void swim(){
System.out.println("我游泳技术很好,会蛙泳、自由泳、仰泳、蝶泳...");
}
public void eat(){
System.out.println("我牙好胃好,吃啥都香!");
}
}
public class InterfaceTest{
public void m1(Runner f) { f.run(); } //接口作参数,下同
public void m2(Swimmer s) {s.swim();}
public void m3(Animal a) {a.eat();}

public static void main(String args[]){
InterfaceTest t = new InterfaceTest();
Person p = new Person();
t.m1(p); //接口回调,下同
t.m2(p);
t.m3(p);
}
}

Tags in this post...

面试题 相关文章推荐
2019年Java面试必问之经典试题
Sep 12 面试题
如何用SQL语句进行模糊查找
Sep 25 面试题
Internal修饰符有什么含义
Jul 10 面试题
什么是TCP/IP
Jul 27 面试题
几个Shell Script面试题
Apr 18 面试题
介绍一下linux文件系统分配策略
Nov 17 面试题
shell程序中如何注释
Jan 28 面试题
如何获得EntityManager
Feb 09 面试题
若通过ObjectOutputStream向一个文件中多次以追加方式写入object,为什么用ObjectInputStream读取这些object时会产生StreamCorruptedException?
Oct 17 面试题
日期和时间问题
Jan 04 面试题
什么是抽象
Dec 13 面试题
与UNIX有关的几个名词
Sep 17 面试题
异常和异常类的概念
Sep 12 #面试题
益模软件Java笔试题
Mar 27 #面试题
纬创Java面试题笔试题
Oct 02 #面试题
包装类的功能、种类、常用方法
Jan 27 #面试题
怎样声明接口
Sep 19 #面试题
群胜软件Java笔试题
Sep 29 #面试题
类、抽象类、接口的差异
Jun 13 #面试题
You might like
判“新”函数:得到今天与明天的秒数
2006/10/09 PHP
PHP cdata 处理(详细介绍)
2013/07/05 PHP
php常用数学函数汇总
2014/11/21 PHP
PHP实现多维数组转字符串和多维数组转一维数组的方法
2015/08/08 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
2015/12/14 PHP
JavaScript对象链式操作代码(jquery)
2010/07/04 Javascript
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
jQuery代码优化之基本事件
2011/11/01 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
Javascript中查找不以XX字符结尾的单词示例代码
2013/10/15 Javascript
JavaScript中的typeof操作符用法实例
2014/04/05 Javascript
Javascript基础教程之比较null和undefined值
2016/05/16 Javascript
JS实现获取剪贴板内容的方法
2016/06/21 Javascript
JS控制FileUpload的上传文件类型实例代码
2016/10/07 Javascript
简单实现jQuery级联菜单
2017/01/09 Javascript
vue数组对象排序的实现代码
2018/06/20 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】
2018/12/13 Javascript
小程序自定义单页面、全局导航栏的实现代码
2019/03/15 Javascript
vue3.0实现点击切换验证码(组件)及校验
2020/11/18 Vue.js
[02:25]专访DOTA2负责人Erik 国际邀请赛暂不会离开西雅
2014/07/21 DOTA
Python中urllib2模块的8个使用细节分享
2015/01/01 Python
Python实现遍历数据库并获取key的值
2015/05/17 Python
Python实现比较两个文件夹中代码变化的方法
2015/07/10 Python
Python文件处理
2016/02/29 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
Django框架设置cookies与获取cookies操作详解
2019/05/27 Python
Selenium+Python 自动化操控登录界面实例(有简单验证码图片校验)
2019/06/28 Python
Python3 main函数使用sys.argv传入多个参数的实现
2019/12/25 Python
python 获取字典键值对的实现
2020/11/12 Python
创建索引时需要注意的事项
2013/05/13 面试题
旅游管理专业生自荐信范文
2014/01/02 职场文书
教师见习报告范文
2014/11/03 职场文书
商务考察邀请函模板
2015/02/02 职场文书
2015年质量管理工作总结范文
2015/05/18 职场文书
结婚幸福感言
2015/08/01 职场文书
小学语文教师研修感悟
2015/11/18 职场文书