接口的特点
接口就像程序中的标准,规定了实现这个标准的类需要符合什么规范。
接口可以包含常量,变量,没有方法体的方法。该方法有实现(implemanes)该接口的类实现。
接口之间可以互相继承(extends),一遍拓展接口的功能。
排序接口
举例:Java中对象的数据要使用Array.sort(object)方法排序,对象的类必须实现Comparable接口,该接口包含compareTo方法,实现接口的类就必须实现compareTo方法。
public class Employee implements Comparable<Employee>{
public Employee(String name, Double salary) {
this.name = name;
this.salary = salary;
}
private String name;
private Double salary;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Double getSalary() {
return salary;
}
public void setSalary(Double salary) {
this.salary = salary;
}
@Override
public int compareTo(Employee o) {
return Double.compare(this.salary,o.salary);
}
}
当使用Array.sort(Employee)进行排序时,就会调用类中重写的compareTo方法。
接口和抽象类
抽象类的特点和接口相似,但使用抽象方法必须继承,而继承是不能多重继承的,但实现接口可以多重实现
public class Employee implements Comparable<Employee>,Staff