Я прочитал книгу О'Рейли, в которой я узнал этот принцип получения результата .
- Используйте
extendsподстановочный знак, когда вы получаете значения только из структуры.- Используйте
superподстановочный знак, когда вы помещаете только значения в структуру.- И не используйте подстановочный знак, когда вы оба хотите получить и поместить из / в структуру.
Исключения составляют:
Вы не можете поместить что-либо в тип, объявленный с
extendsподстановочным знаком, кроме значенияnull, которое принадлежит каждому ссылочному типу.Вы не можете получить что-либо из типа, объявленного с
superподстановочным знаком, за исключением значения типаObject, который является супертипом каждого ссылочного типа.
Может ли кто-нибудь помочь мне глубже изучить это правило? Если возможно, расположите их иерархически.