Почему я не обращаюсь к переменной экземпляра в классе типов generi c? - PullRequest
0 голосов
/ 27 апреля 2020
public class AgeData {
private int  numberOfPeople;
private int age;

public AgeData(int age){
    numberOfPeople = 1;
    this.age = age;
}
public int getNumberOfPeople() {
    return numberOfPeople;
}

public int getAge() {
    return age;
}

public void setNumberOfPeople() {
    numberOfPeople++;
}

}

public class AgeSearchTree<AgeData extends Comparable<AgeData>> extends BinarySearchTree<AgeData> {

@Override
public AgeData find(AgeData target) {
    int comp = target.getAge();
}

}

У меня нет доступа к целевой переменной возраста, почему? Класс BinarySearchTree генерирует c класс типа и расширяет класс BinaryTree и дерево root, переменную BinaryTree

1 Ответ

0 голосов
/ 27 апреля 2020

Необходимо применить следующие изменения:

public class AgeData implements Comparable<AgeData> {

    @Override
    public int compareTo(AgeData that) {
        // your implementation
    }
}

public class AgeSearchTree extends BinarySearchTree<AgeData> {
  //...
}
...