Generics in Interface делает все списки универсальными в JAVA [дубликат]JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Generics in Interface делает все списки универсальными в JAVA [дубликат]

Сообщение Anonymous »

При использовании дженериков в методе интерфейса все остальные методы интерфейса, включающие список конкретных классов, не разрешаются должным образом.

Код: Выделить всё

interface Fruit
{
public List getColors();
public List getChildren();
}

class FruitUtil
{
public static void readFruit(Fruit fruit)
{
// shows error : Type mismatch: cannot convert from element type Object to String
for(String color : fruit.getColors()) { }

// shows error : Type mismatch: cannot convert from element type Object to Fruit
for(Fruit thisFruit : fruit.getChildren()) { }
}
}
Здесь, хотя я использовал дженерики для представления списка дочерних элементов Fruit, у меня есть конкретный список строк для представления цветов фруктов.
Но при использовании getColors() Fruit он возвращает List вместо List, несмотря на то, что он имеет точное тип возвращаемого значения.
Я что-то упустил?

Подробнее здесь: https://stackoverflow.com/questions/790 ... ic-in-java
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»