定义一个接口,要使用interface关键字。
- 接口中的变量固定修饰符: public static final
- 接口中的方法固定修饰符: public abstract
类要操作接口,必须使用implements关键字。当A类实现了B接口时,对B接口中的方法有两种处理方式:
- A实现接口中的所有抽象方法;
- 把A类定义为抽象类。
public interfa B{
public static final int X = 5;
public abstract void run();
public abstract void go();
}
public class implements B {
public void run() {
}
public void go() {
}
}
或者
public abstract class A implements B {
//可以不实现B接口中的方法
}
抽象类和接口的区别:
- 抽象类只能被继承,而且只能单继承。接口需要被实现;而且可以多实现。
- 抽象类中可以定义非抽象方法,子类可以直接继承使用;接口中都有抽象方法,需要子类去实现。
- 抽象类使用的是 is a 关系;接口使用的 like a 关系。
- 抽象类的成员修饰符可以自定义;接口中的成员修饰符是固定的。全都是public的。