В официальной документации Java есть несколько упражнений с ответами в конце главы generics. Я смог решить большинство, однако один ответ мне не ясен. Вы можете найти вопросы и ответы here. Я не понимаю, ответ на вопрос 8. Почему они пишутJava generics excercise - answer information
<T extends Object & Comparable<? super T>>
Я пишу
<T extends Comparable<? super T>>
и не понимаю, почему проходит объект необходимо или лучше.
Существует более обсуждение этого «трюк» здесь: http://www.angelikalanger.com/GenericsFAQ/FAQSections/ProgrammingIdioms.html#FAQ104 –
Спасибо за ваши комментарии, они были очень полезно! Насколько я понимаю, расширение объекта необязательно и только вставлено для того, чтобы не сломать устаревший api, что является более или менее ошибкой. Так что было бы совершенно нормально (или даже лучше) делать это так, как я это делал ... –
@ user1361466 Вот как я думаю об этом, да, хотя это, возможно, меньше ошибка и больше возможностей;) При добавлении Generics разработчики языка были настроены поддерживать обратную совместимость с предыдущими версиями Java, и как таковые (правильно или неправильно) они сделали много компромиссов с Generics. –