Возможный дубликат:
Почему Java не поддерживает общие Метательные предметы?
Привет, я пытаюсь создать общий подкласс Exception, чтобы его получатель мог проверять параметры, которые отвечали за его выброс. Хотя можно добавить универсальные шаблоны к подклассам неуниверсальных классов, расширение Exception дает
The generic class Foo<T> may not subclass java.lang.Throwable
Я также пробовал нестатический внутренний класс (чтобы избежать указания T рядом с именем класса), но это тоже не сработало.
Структура моего класса исключения (Interval - это мой собственный класс, содержащий два T-поля - начало и конец интервала ... если это имеет значение):
class IntervalOverlapException<T extends Comparable<T>> extends RuntimeException {
private final Interval<T> first;
private final Interval<T> second;
IntervalOverlapException(Interval<T> first, Interval<T> second) {
this.first = first;
this.second = second;
}
public Interval<T> getFirstInterval() {
return this.first;
}
public Interval<T> getSecondInterval() {
return this.second;
}
}
Есть ли способ добиться такой функциональности без вышеупомянутой ошибки компиляции?