学习目标:掌握接口的基本语法.
- 接口的定义
- 与抽象类比较
- 什么是接口
- 接口的使用
- 接口(interface)(规定一类功能)
public interface AudioOutput
{
public void play(AudioData samples);
}
规则:
- 不能写方法体;
- 必须为public.
2. 与抽象类一样, 必须派生一个子类,并且实现接口类中的方法.
public class XiaoMi implements AudioOutput
{
@Override
public void play(AudioData samples)
{
}
}
电脑提供音频数据和一个接口 AudioOutput, 不同的音响设备商处理音频数据的方式不一样, 但都应该实现接口的方法.
简单来说就是给音响设备商提供一个规范, 你按照我的这个规范来写代码, 不同的商家写的代码可能不一样, 但我调用它的方式不会变化.
在JDBC中有应用.(服务器通过接口使用数据库都是一样的, 具体接口的实现交给数据库商, 不同的数据库商实现的方式不一样,但服务器端并不关心)
接口与抽象类很相似,区别在于:
- 用implements而不是extends(不表示继承关系)
- 一个类可以有多个接口, 但继承只能单根继承.
- 接口不应该添加属性, (可以添加,但没有意义)
3.什么是接口
在很多地方都有“接口”这个术语 :
• 电脑上的音频接口、网络接口、USB接口、HDMI接口
• API : Application Programming Interface
• UI : User Interface
• 两个不同的公司合作时,要互相指定接口人
本质上:当一个系统与另一个系统对接时,需定义接口
两个系统,交互的那一部分就是接口.
电脑是一个系统,音箱是一个系统,两者通过接口对接起来
4.接口的使用
• 定义一个Computer
• 当Computer不连接音箱时,Computer也可以正常工作(只是听不到声音)
• 当Computer连接音箱时,声音数据交给音箱来播放出来。
• 可以连接不同的音箱。
• 电脑并不规定应该用哪个音箱,只规定要实现的功能 (play)
• 电脑和音箱是独立的系统,当对接口时,对接点就是接口。
小结:
接口的作用: 连接两个系统,实现两系统之间的数据交互.
接口是个比较难的知识点,在安卓开发中大量应用.
在JDBC也有应用.
初学记住语法格式:
定义一个接口: interface 类, 类中方法无方法体, 不应该有属性.
派生一个子类: implements 并实现接口类中的所有方法.
一个类可以implements多个接口.
emmmm其实笔者也不是很明白这个语法,在网站开发中很少自己写一个接口,一般都是使用jar包里面的接口,例如JDBC, servlet等.