Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
3 / 3 / 0
Регистрация: 26.09.2014
Сообщений: 84
1

Непонятка по дженерикам

08.06.2017, 21:03. Показов 398. Ответов 5
Метки нет (Все метки)

В интерфейсе ExecutorService, есть метод submit, одна из перегруженных версий которого возвращает такое значение Future<?> Вопрос:Чему можно присвоить такое значение? Я пришел к виводу, что можно присвоить только просто переменной Future, без каких либо параметров. Зачем тогда писать в возвращаемом значении Future<?>, а не просто Future? И что означает capture<?>? Только можно пожалуйста именно по этим вопросам конкретно отвечать.
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.06.2017, 21:03
Ответы с готовыми решениями:

непонятка
на парах нам учитель дает зделаную прогу как пример (скорей всего на студия-08) и в компютерном...

Непонятка
Вопрос первый: Почему у меня только первое вводимое значение помещается в таблицу, а все...

непонятка
не могу переключить нетбук asus pc 900чтобы телек был как монитор,есть вход vga сказали что нет...

Непонятка с IE
Здравствуйте! В шапке сайта есть картинка которая имеет заданную высоту. Во всех браузерах...

5
Эксперт Java
3101 / 2584 / 796
Регистрация: 05.07.2013
Сообщений: 12,464
08.06.2017, 21:30 2
я же давал тебе ссылку на доки, так по этому поводу целый раздел написан, но видимо с чтением не о чень
<?> == <? extends Object>
https://docs.oracle.com/javase... cards.html
0
3 / 3 / 0
Регистрация: 26.09.2014
Сообщений: 84
08.06.2017, 21:44  [ТС] 3
Цитата Сообщение от xoraxax Посмотреть сообщение
я же давал тебе ссылку на доки, так по этому поводу целый раздел написан, но видимо с чтением не о чень
<?> == <? extends Object>
То, что <?> == <? extends Object> - это и так понятно. Но только при таком раскладе строка Future<String> t = exe.submit(new Runnnable()); должна работать корректно, но там вылазит ошибка компиляции, что не логично. Я ведь в вопросе написал, что Future c любым параметризованным типом не подходит, т.е. Возвращаемый тип Future<? extends Object>, но в итоге такого рода переменной присвоить нельзя, точнее можно лишь делая явное приведение. Плюс вопрос еще в том, зачем метод submit возвращает Future c какими-то дженериками, если в данном варианте метода дженерики не используются, ибо нет никакого возвращаемого значения из метода run?
0
Эксперт Java
3101 / 2584 / 796
Регистрация: 05.07.2013
Сообщений: 12,464
08.06.2017, 22:00 4
http://winterbe.com/posts/2015... -examples/
0
Эксперт Java
4075 / 3809 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 11
09.06.2017, 00:10 5
Цитата Сообщение от Slavador Посмотреть сообщение
зачем метод submit возвращает Future c какими-то дженериками, если в данном варианте метода дженерики не используются, ибо нет никакого возвращаемого значения из метода run?
А что вы предлагаете? Использовать сырой Future?
Использование raw-типов несёт определённые проблемы, которых авторы JDK очень хотят избежать. Поэтому там вопросик.
0
1561 / 1039 / 93
Регистрация: 17.04.2009
Сообщений: 2,995
09.06.2017, 00:11 6
Цитата Сообщение от Slavador Посмотреть сообщение
нет никакого возвращаемого значения из метода run?
Да, так как Runnable#run не возвращает значения. В этом submit-е дженерик вообще не используется. Если значение Future#get возвращает null, то таск завершился успешно. Если свалится эксепшн в таске, то и Future#get упадет с эксепшном.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.06.2017, 00:11

Непонятка
Доброго времени суток, вообщем сразу к делу, хочу сделать как тут http://make-up.org.ua/ с лева...

непонятка с конструктором
private String name; //Ф.И.О private double sumAccount; // сумма на карте private long...

Непонятка с php
сегодня уже создавал тему про растягивание сайта, и ребята очень помогли, большое спасибо им...

Непонятка с оперативкой
Вообщем хочу обратиться к вам за помощью, но тольком не знаю в каком разделе создать тему. Вообщем...

Непонятка с float
float s = (123 * 100 / 360000); cout &lt;&lt; fixed &lt;&lt; setprecision(3) &lt;&lt; s; По идее, в консоли должно...

Непонятка с ноутбуком
Добрый день! у меня такая беда с ноутом, периодически зависает и искажается изображение на экране....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.