Главная » Разработка для Android » Дженерики в Java ДЛЯ ANDROID

0

 

Дженерики в Java – это обширная и по-настоящему сложная тема. На эту тему написаны целые книги. В данном пункте мы обсудим дженерики в контексте их наиболее распространенного набора – библиотеки Collections Library. Однако мы не ставим своей целью рассмотрение их в деталях.

Пока в языке Java не появились дженерики, было невозможно статически типизировать содержимое контейнера. Часто встречался код следующего вида:

Проблема очевидна: useList не гарантирует, что makeList создаст список элементов Thing. Компилятор не может удостоверить, что приведение в useList будет работать, поэтому код может «рвануть» прямо во время исполнения.

Дженерики позволяют решить эту проблему, правда, за счет существенной сложности. Синтаксис объявления дженериков устоялся довольно давно без сопровождающих код комментариев. Вот версия примера, в котором присутствуют дженерики:

Тип объектов, заключенных в контейнере, указывается в угловых скобках (<>), которые являются частью типа контейнера. Обратите внимание на то, что в useList уже не требуется приведение, так как теперь компилятору известно, что параметр 1 – это список Thing.

Описания типов дженериков могут быть довольно развернутыми. Подобные объявления – не редкость:

Источник: Android. Программирование на Java для нового поколения мобильных устройств

По теме:

  • Комментарии