什么是接口
接口不是类,接口描述了对类的需求,由类来实现这些需求。如Comparable接口:
public interface Comparable<T>
{
int compareTo(T other);
}
Compare接口要求实现该接口的类要实现compareTo方法。
类Employee实现Comparable接口,使用关键字implement,并实现compare方法:
class Employee implemets Comparable<Employee>
{
public int compareTo(Employee other)
{
if(salary < other.salary) return -1;
if(salary > other.salary) return 1;
return 0;
}
}
2.为什么使用接口
Java是强类型语言,调用方法时编译器会检查该方法是否存在。如果类实现了接口,就一定会实现接口规定的方法,不需要编译器再做检查。
3.接口与抽象类
为什么不使用抽象类规定要实现的需求,而要使用接口?因为类可以实现多个接口,但只能扩展一个抽象类。
参考:
Cay S. Horstmann, Gary Cornell. JAVA核心技术卷I:基础知识(第八版).机械工业出版社.2011年4月第1版. 第6.1节.