Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / инстанциирование с использованием wild card / 15 сообщений из 15, страница 1 из 1
01.10.2014, 21:38
    #38764027
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
Объясните мне плиз, почему так можно:
Код: java
1.
List<Set<? >> ab = new ArrayList<Set<? extends Object>>();



а так нет

Код: java
1.
List<Set<? >> ab = new ArrayList<Set<Object>>();



вроде ж кэпчится и во втором случае, не?
...
Рейтинг: 0 / 0
01.10.2014, 21:44
    #38764031
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
P.S.

Да, я знаю, что

Код: java
1.
ArrayList<Number> list = new ArrayList<Integer>();



так писать нельзя...


тут что-то подобное?
...
Рейтинг: 0 / 0
01.10.2014, 23:24
    #38764085
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
questioner, не ломай голову над пустяками.

Пиши
Код: java
1.
List ab = new ArrayList();


будет то-же самое.
...
Рейтинг: 0 / 0
02.10.2014, 10:01
    #38764346
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
mayton,

интересно ж понять почему.
...
Рейтинг: 0 / 0
02.10.2014, 10:23
    #38764376
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
Потому-что компиллятор пишет: incompatible types. Или ты хочешь
пуститься в философский дискурс на тему почему Sun/Oracle
при создании генериков решили сделать именно так?
...
Рейтинг: 0 / 0
02.10.2014, 11:00
    #38764443
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
mayton,

я не уверен, что он философский, но да.
...
Рейтинг: 0 / 0
02.10.2014, 11:06
    #38764459
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
...
Рейтинг: 0 / 0
02.10.2014, 11:59
    #38764555
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
Blazkowicz,

там немного про другую проблему. Про то, что два разных ? это вполне могут быть разные типы.
...
Рейтинг: 0 / 0
02.10.2014, 12:12
    #38764583
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
questionerтам немного про другую проблему. Про то, что два разных ? это вполне могут быть разные типы.
Там от обратного доказывается почему такой Cast не разрешен.
...
Рейтинг: 0 / 0
02.10.2014, 12:28
    #38764623
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
Blazkowicz,

а слово new в моём вопросе вообще никак не влияет?
...
Рейтинг: 0 / 0
02.10.2014, 12:30
    #38764628
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
questionerBlazkowicz,

а слово new в моём вопросе вообще никак не влияет?
Так компилятор не на new ругается, а на приведение типов при присвоении. При чем тут new. На что оно должно влиять?
...
Рейтинг: 0 / 0
02.10.2014, 13:23
    #38764717
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
Blazkowicz,

не, ну а хрен ведь знает, что он там насоздаёт когда ты справа ? пишешь
...
Рейтинг: 0 / 0
02.10.2014, 14:37
    #38764901
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
questioner, я-же тебе написал. Он создает справа

Код: java
1.
new ArrayList();
...
Рейтинг: 0 / 0
02.10.2014, 15:04
    #38764953
questioner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
mayton,

ну в рантайме то понятно.

Вопрос же не в этом.
...
Рейтинг: 0 / 0
02.10.2014, 16:14
    #38765066
Alexey Tomin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
инстанциирование с использованием wild card
questionerОбъясните мне плиз, почему так можно:
Код: java
1.
List<Set<? >> ab = new ArrayList<Set<? extends Object>>();



а так нет

Код: java
1.
List<Set<? >> ab = new ArrayList<Set<Object>>();



вроде ж кэпчится и во втором случае, не?

При чём здесь это?
В ab можно вставить Set<String>, а в ArrayList<Set<Object>> этого вставлять НЕЛЬЗЯ (хотя технически- пройдёт).
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / инстанциирование с использованием wild card / 15 сообщений из 15, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]