我不确定如何在我的抽象类中实现类似的接口。我有以下示例代码可用来尝试解决这个问题:
public class Animal{ public String name; public int yearDiscovered; public String population; public Animal(String name, int yearDiscovered, String population){ this.name = name; this.yearDiscovered = yearDiscovered; this.population = population; } public String toString(){ String s = "Animal name: "+ name+"\nYear Discovered: "+yearDiscovered+"\nPopulation: "+population; return s; } }
我有一个测试类,该类将创建Animal类型的对象,但是我希望在该类中具有一个可比的接口,以使发现的年纪高于低位。我不知道如何去解决这个问题。
您只需要定义Animal implements Comparable<Animal>即public class Animal implements Comparable<Animal>。然后,您必须以compareTo(Animal other)自己喜欢的方式实现该方法。
Animal implements Comparable<Animal>
ublic class Animal implements Comparable<Animal>
compareTo(Animal other)
@Override public int compareTo(Animal other) { return Integer.compare(this.year_discovered, other.year_discovered); }
使用的实现compareTo,具有较高级别的动物year_discovered将获得更高的顺序。我希望你的想法Comparable和compareTo这个例子。
compareTo
year_discovered
Comparable