Я пишу несколько классов, используя Generics, но не могу найти решение для класса SolutionsSubset и поэтому получаю ошибку "type parameter S is not within its bound". Я прочитал предыдущие вопросы об этой же ошибке, но не могу решить ее для своего случая. Может ли кто-нибудь помочь мне улучшить мои знания о дженериках? Любой ссылка на хорошую книгу (я могу найти в google много информации но если кто-то может порекомендовать книгу, учебник и т.д., буду рад). Хотя я старался не забывать о правилах, чтобы задать вопрос, но я прошу прощения, если мой вопрос не соответствует этим правилам.
У меня есть следующие классы и интерфейсы:
public interface Subset<T extends Comparable<T>> extends Comparable<Subset<T>>
public class MathSubset<T extends Comparable<T>> extends TreeSet<T> implements Subset<T>
public interface Solution<T extends Comparable<T>>
public interface Solutions<S extends Solution<?>> extends Iterable<S>
public class SolutionsSubset<S extends Solution<?>> extends MathSubset<S> implements Solutions<S>
Мне нужно, чтобы Subset расширял Comparable. В SolutionsSubset класс MathSubset хранит объекты Solution. Как я должен изменить эти определения, чтобы все заработало?
Заранее спасибо