У меня есть 2 разных типа менеджеров данных, один наследует другой, и оба полагаются на 1 базовый класс данных и выглядят так:
public abstract class BaseDataType {
...
}
public class BaseManager<DataType extends BaseDataType> implements ListModel{
...
public final DataType get(index i){
return dataList.get(i);
}
...
}
public class BaseSQLManager<DataType extends BaseDataType, Adapter extends SQLAdapter>
extends BaseManager<DataType>{
...
}
Насколько я понимаю, использование BaseSQLManager m =new BaseSQLManager<Property, PropertSQLAdapter>();
позволило бы мне использовать Property p = m.get(i);
, однако мне сообщили, что метод get возвращает BaseDataType.
Я уверен, что мне здесь не хватает чего-то маленького, и я не могу понять это. Объяснение того, почему это не работает, действительно помогло бы. Спасибо