Java генеричните лекарства

Би било хубаво, ако можем да напише метод за сортиране, който да сортирате елементи Integer масив, масив от низове или масив от всякакъв тип, който поддържа ред.

Generics също осигуряват безопасност вид по време на компилация, която позволява на програмистите да ловят невалидни видове по време на компилация.

Използване на Java Общата концепция, бихме могли да пишат общ метод за сортиране на масив от обекти, а след това се обадете генеричен метод с целочислени масиви, двойно масив, низ масиви, и така нататък, за да сортирате масива.

Общи методи:

Можете да пишете на съвместна декларация на метода, който може да бъде извикана с аргументи от различен тип. Въз основа на видовете аргументите преминали в общия метод, компилаторът обработва всеки метод обаждане по подходящ начин. Показани са правилата за определяне на методите Generic:

Всяка секция на параметъра стил включва един или повече параметри на вид, разделени със запетая. тип параметър, известен също като тип променлива е идентификатор, който определя често срещаният тип име.

Тялото на общ метод е обявена като всеки друг метод. Моля, имайте предвид, че параметрите на тип могат да бъдат само референтен тип, а не примитивни типове (например INT, двойни и полу-кокс).

Следният пример показва как можем да отпечатате масив от различни видове с един универсален метод:

Това ще доведе до следния резултат:

Пръстен Тип настройки:

Може да има моменти, когато искате да ограничите видовете видове, които имат право да премине в параметър от тип. Например, един метод, който работи на номера може да се наложи само да взема копие на въпроса или нейните подгрупи. Това е, което ограничава настройки за вид за.

За да заявите ограничен тип параметър, списък на вида на името на параметъра, последван от пистите на ключови думи, а след това му горна граница.

Следният пример илюстрира как използването простира в общия смисъл да се отнасят или до "разпространение" (както в час) или "Напред" (в интерфейси). Този пример е общ метод, за да се върне най-големият от трите аналози:

Това ще доведе до следния резултат:

Общи класове:

Изявлението изглежда като общ клас от родово декларация клас, с изключение на името на класа трябва да бъде раздел параметър тип.

Както в случая на универсален раздел методи параметър тип общ клас могат да имат един или повече параметри на тип запетая. Тези класове са известни като параметризираните класове или параметризирани типове, защото те вземат един или повече параметри.

Следният пример показва как можем да определим общ клас:

Това ще доведе до следния резултат: