Как сделать класс Java, который реализует один интерфейс с двумя общими типами?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как сделать класс Java, который реализует один интерфейс с двумя общими типами?

Сообщение Anonymous »

У меня есть общий интерфейс < /p>

public interface Consumer {
public void consume(E e);
}
< /code>

У меня есть класс, который потребляет два типа объектов, поэтому я хотел бы сделать что -то вроде: < /p>

public class TwoTypesConsumer implements Consumer, Consumer
{
public void consume(Tomato t) { ..... }
public void consume(Apple a) { ...... }
}
< /code>

Очевидно, я не могу этого сделать.public class TwoTypesConsumer implements Consumer {
public void consume(Object o) {
if (o instanceof Tomato) { ..... }
else if (o instanceof Apple) { ..... }
else { throw new IllegalArgumentException(...) }
}
}
< /code>

Но я ищу решение для проверки и отправки типов компиляции, которое предоставляет дженерики.public interface AppleConsumer {
public void consume(Apple a);
}
< /code>

Функционально, это решение в порядке, я думаю. Это просто многословный и уродливый. < /P>

Есть идеи?

Подробнее здесь: https://stackoverflow.com/questions/129 ... eric-types
Ответить

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

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

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

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

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