У меня есть класс:Получите Суперкласс от TypeElement без Generic?
public class StartPagePresenter extends AbstractPresenter<String> {
...
}
Использование Java аннотаций Processing Я получил TypeElement
класса:
TypeElement startPagePresenterType = // get the TypeElement of StartPagePresenter
Теперь мне нужно, чтобы получить супер класс, который делается с:
startPagePresenterType.getSuperclass();
Затем я попытался проверить, имеет ли суперкласс правильный тип:
if (!startPagePresenterType.getSuperclass().toString().equals(
AbstractPresenter.class.getCanonicalName())) {
...
}
Вот проблема: AbstractPresenter.class.getCanonicalName()
приводит к:
core.mvp.AbstractPresenter
и startPagePresenterType.getSuperclass().toString()
приводит к:
core.mvp.AbstractPresenter<java.lang.String>
Если сравнить эти строки, они никогда не равны, хотя супер классов одинаковы.
Как я могу получить суперкласс от startPagePresenterType.getSuperclass()
без общего блока?
Попробуйте startPagePresenterType.getSuperclass() getCanonicalName(). ToString(). Equals ( AbstractPresenter.class.getCanonicalName() –
getSuperclass не имеет метод getCanonicalName – confile