JAVA接口介绍

来源:互联网 发布:大卫罗宾逊数据 编辑:程序博客网 时间:2024/05/22 20:28

官方文档的尝试性翻译

如你已经学到的,对象通过定义函数的方法与外部交流。函数为对象与外界的接口。例如,你电视机前的按钮,是你和它的塑料外壳电布线的接口。你按下了“电源”按钮来控制电视机的关灭。
推而广之,接口就是一组没有实现的相关函数的集合。如果把自行车的行为定义为接口,可能会有下面的结果:

interface Bicycle{//wheel revolutions per minutevoid changeCadence(int newValue);void changeGear(int newValue);void speedUp(int increment);applyBrakes(int decrement);}

若要实现这个接口,你的类的名字可能会改变(例如以某品牌的自行车ACMEBicycle为例)而且在声明类的时候必须用implements关键字。

class ACMEBicycle implemments Bicycle{int cadence = 0;int speed = 0;int gear = 1;//编译器将要调用那个方法//changeCandence,changeGear,speedUp和applyBrakes//全被实现。如果这些函数不在此类中出现,编译器会报错void changeCandance(int newValue){    candance = newValue;}void changeGear(int newValue){    gear = newValue;}void speedUp(int increment){    speed = speed+increment;}void applyBrakes(int decrement){    speed = speed - decrement;}void printStates(){    System.out.println("candance:"+candance+" speed:"+speed+" gear:"+gear);}}

实现一个接口使得类的动作更加规范。接口组织了类与外部世界的合同,并且这个合同在编译阶段是被强制实现的。如果你的类号称实现了一个接口,那么在它成功编译之前,所有接口定义的方法必须出现在它的源代码中。

注意:事实上要编译ACMEBicycle类,你需要在接口方法的前面添加关键字public。你会在之后的课程中明白为什么要这样做。

0 0