Inteface仅包含方法声明,并且其所有方法都是抽象方法。在最常见的形式中,接口是一组具有空主体的相关方法。要创建接口,请在类定义中使用关键字 interface 。interface的文件名始终与类定义中的接口名相同,扩展名为.java。
在RemoteControl interface定义了四个移动方法和getPosition()方法。这些方法没有身体。如果一个类实现一个接口,则该类应实现该接口定义的所有协定/方法。
package org.nhooo.example.fundamental; public interface RemoteController { void moveUp(int n); void moveRight(int n); void moveDown(int n); void moveLeft(int n); int[] getPosition(); }
以下代码段显示了如何创建实现该RemoteController接口的类。
package org.nhooo.example.fundamental; public class DummyRemoteControl implements RemoteController { private int x; private int y; public DummyRemoteControl(int x, int y) { this.x = x; this.y = y; } public void moveUp(int n) { x = x + n; } public void moveRight(int n) { y = y + n; } public void moveDown(int n) { x = x - n; } public void moveLeft(int n) { y = y - n; } public int[] getPosition() { return new int[] {x, y}; } public static void main(String[] args) { RemoteController control = new DummyRemoteControl(0, 0); control.moveDown(10); control.moveLeft(5); System.out.println("X = " + control.getPosition()[0]); System.out.println("Y = " + control.getPosition()[1]); } }