Generic Recursive Type Bound 이해하기(Item30)
문제 상황을 이해하기 위해서 다음과 같은 문제를 풀어 보자 interface Fruite { Integer getSize(); } // apple.java class Apple implements Fruit, Comparable<Apple> { private final Integer size; public Apple(Integer size) { this.size = size; } @Override public Integer getSize() { return size; } @Override public int compareTo(Apple other) { return size.compareTo(other.size); } } // orange.java class Orange implements Fruit, Comparable<Orange> { private final Integer size; public Orange(Integer size) { this....