Зачем в дженериках используется ?, и эквивалентен ли он T/E?
? extends U  - некоторый тип, который является потомком U,   ? super T  - некоторый тип, который является предком Т.  Ваша схема(так как у Вас написано), как правило применяется: первая часть для приемника, вторая для источника при обработке чего либо.
Цитирую примерно Эккеля:
 - неограниченная маска, означает "что угодно", в большинстве случаев компилятор не видит разницы между T и . 
Без ? вы сможете больше сделать с параметрами, а с ? - принимать более широкий диапазон параметров.