169 похожих чатов

Ребят, не могу нагуглить чёт, почему указывают <? super Object>

? Object же наверху иерархии классов и у него не может быть родителей, почему тогда пишут, что его родителей принимает?

16 ответов

33 просмотра

Почитай про pecs

>почему wildcard с super может принимать объекты, а wildcard с extend – нет? И на него мы уже практически нашли ответ выше. List<? extends Class3> - на деле может оказаться листом объектов самого «младшего» класса, тогда как конструкция List<? super Class3> гарантирует, что при любом раскладе в листе будут объекты имеющие тип не «младше» класса Class3.

connecticum- Автор вопроса
Алексей
>почему wildcard с super может принимать объекты, ...

А какие ещё могут быть объекты "старше" Object? Никаких. Тогда смысла в этой записи нет

connecticum- Автор вопроса
Алексей
Где тут про старше написано?

А я про что изначально спрашивал?

connecticum- Автор вопроса
Алексей
Super это не строго старше

Приведи пример класса, который является super по отношению к Object

Object

connecticum- Автор вопроса
Алексей
Object

Не понимаю. Чего-то я видимо не знаю

connecticum
Не понимаю. Чего-то я видимо не знаю

https://docs.oracle.com/javase/tutorial/java/generics/lowerBounded.html

connecticum- Автор вопроса
Алексей
https://docs.oracle.com/javase/tutorial/java/gener...

>Say you want to write a method that puts Integer objects into a list. To maximize flexibility, you would like the method to work on List<Integer>, List<Number>, and List<Object> — anything that can hold Integer values. To write the method that works on lists of Integer and the supertypes of Integer, such as Integer, Number, and Object, you would specify List<? super Integer>. Ну, тут всё логично, и что? Ты можешь простым языком написать или ты сам не знаешь?

connecticum
>Say you want to write a method that puts Integer ...

Тебе же написали Producer Extends Consumer Super https://t.me/javastart/596141

connecticum
>Say you want to write a method that puts Integer ...

Вон под ? super integer подпадает сам Integer

connecticum- Автор вопроса
Алексей
Вон под ? super integer подпадает сам Integer

Ну это ясно и так, ну а какой смысл в <? super Object> если ничто кроме обджекта туда не попадает? Почему не просто <Object> написать? В чем разница то?

connecticum
Ну это ясно и так, ну а какой смысл в <? super Obj...

Потому что тогда только строго List<Object>

Похожие вопросы

Обсуждают сегодня

Какой-то там пердун в 90-х решил, что есть какая-то разная типизация. Кого вообще это волнует?
КТ315
49
void terminal_scroll() { memmove(terminal_buffer, terminal_buffer + VGA_WIDTH, buffer_size - VGA_WIDTH); memset(terminal_buffer + buffer_size - VGA_WIDTH, 0, VGA_WIDTH); ...
Егор
47
Всем привет! Подскажите, пожалуйста, в чем ошибка? Настраиваю подключение к MySQL. Либы лежат рядом с exe. Все как по "учебнику"
Евгений
16
А можете как-то проверить меня по знаниям по ассемблеру?
A A
132
Здравствуйте! У меня появилась возможность купить книгу "Изучай Haskell во имя добра!". Но я где-то слышал, что эта книга устарела. Насколько это правда??
E
22
Здравствуйте! Я вот на stepic решаю задачи на хаскеле https://stepik.org/lesson/8443/step/8?unit=1578 мой код import Data.List (isInfixOf) removing :: String -> [String] ->...
E
10
Камрады, кто тесно работал с vtv, хотел уточнить. Ширина column задаётся жёстко на этапе создания дерева или можно в рантайме ее менять программно (не мышкой)?
Ed Doc
10
да ладно ... что там неочевидного ? глянуть в исх-ки датасета и/или кверика чтобы понять в каком месте и как выполняется обращения к св-вам blablaSQL - минутное дело, даже е...
Сергей
7
Здесь для arm кто-нибудь кодит ?
Nothing
52
Всем привет, у меня есть сервер принимающий входящие HTTP подключения, как проверить, что подключение было через прокси или нет, есть какие то поля в заголовках по которым мо...
Кибер Бомж
8
Карта сайта