java中接口的作用
接口是什么? 生活中最明显的就是电脑上的usb接口了,我们都知道,usb的作用使得电脑和任何一个电子设备只要都支持这个接口,就可以互相通信,交互就变得非常方便。在编程语言中,也是如此。
从一篇文章中看到作者是通过电脑的usb接口来解释编程语言中的接口的,写得很好,这里根据自己的理解,又作了补充解释。
首先,接口必然涉及到至少两个对象(一个电脑+一个支持usb接口的其他设备就拿手机吧)。
定义接口为 interface USB 。 那USB对于电脑来说,肯定要有启动、卸载、读取、写入这些功能,可以把usb定义为如下
1
2
3
4
5
6
7
|
interface USB { public boolean start(); public boolean stop(); public String read(); public boolean write(String context); } |
电脑类如下,只使用接口,这样就不用关心USb设备时如何实现的。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
class Computer { Computer() { System.out.println( "Computer设备创建成功,可以通过usb访问其他设备" ); } //打开usb设备,并且读取信息 public void useUSB(USB u) { u.start(); u.read(); } //退出usb设备 public void exitUSB(USB u) { u.exit(); } //写入信息到usb设备中 public void writeUSB(USB u) { u.write( "写入信息到USB" ); } } |
手机类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
class Phone implements USB { public Phone() { System.out.println( "Phone设备制造完毕,支持usb接口" ); } public boolean start() { System.out.println( "手机usb连接成功" ); return true ; } public boolean stop() { System.out.println( "手机usb停止成功" ); return true ; } public String read() { System.out.println( "usb读取手机信息" ); return "" ; } public boolean write(String context) { System.out.println( "usb写入手机信息" ); return true ; } } |
接下来,展示电脑如何通过usb使用手机的
1
2
3
4
5
6
7
8
|
public static void main() { Computer c1 = new Computer(); USB p1 = new Phone(); Phone p2 = new Phone(); c1.useUSB(p1); c1.exitUSB(p2); } |
代码大概意思就是如此,不过,还没在jvm里面跑过这些代码,直接拷贝了一个java教程里面的,一会验证下。