Учебники

Java Generics – Классы

Объявление универсального класса выглядит как объявление неуниверсального класса, за исключением того, что за именем класса следует раздел параметра типа.

Раздел параметров типа универсального класса может иметь один или несколько параметров типа, разделенных запятыми. Эти классы известны как параметризованные классы или параметризованные типы, потому что они принимают один или несколько параметров.

Синтаксис

public class Box<T> {
   private T t;
}

куда

  • Box – Box – универсальный класс.

  • T – Параметр универсального типа, переданный в универсальный класс. Это может занять любой объект.

  • t – Экземпляр универсального типа T.

Box – Box – универсальный класс.

T – Параметр универсального типа, переданный в универсальный класс. Это может занять любой объект.

t – Экземпляр универсального типа T.

Описание

T – это параметр типа, передаваемый универсальному классу Box, и его следует передавать при создании объекта Box.

пример

Создайте следующую Java-программу, используя любой редактор по вашему выбору.

GenericsTester.java

Live Demo

package com.tutorialspoint;

public class GenericsTester {
   public static void main(String[] args) {
      Box<Integer> integerBox = new Box<Integer>();
      Box<String> stringBox = new Box<String>();

      integerBox.add(new Integer(10));
      stringBox.add(new String("Hello World"));

      System.out.printf("Integer Value :%d\n", integerBox.get());
      System.out.printf("String Value :%s\n", stringBox.get());
   }
}

class Box<T> {
   private T t;

   public void add(T t) {
      this.t = t;
   }

   public T get() {
      return t;
   }   
}

Это даст следующий результат.