Java Generics - Không có kiểu nguyên thủy

Sử dụng generic, không thể chuyển các kiểu nguyên thủy làm tham số kiểu. Trong ví dụ dưới đây, nếu chúng ta truyền kiểu nguyên thủy int cho lớp hộp, thì trình biên dịch sẽ phàn nàn. Để giảm thiểu tương tự, chúng ta cần truyền đối tượng Integer thay vì kiểu nguyên thủy int.

Thí dụ

package com.tutorialspoint;

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

      //compiler errror
      //ReferenceType
      //- Syntax error, insert "Dimensions" to complete
      ReferenceType
      //Box<int> stringBox = new Box<int>();

      integerBox.add(new Integer(10));
      printBox(integerBox);
   }

   private static void printBox(Box box) {
      System.out.println("Value: " + box.get());
   }  
}

class Box<T> {
   private T t;

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

   public T get() {
      return t;
   }   
}

Điều này sẽ tạo ra kết quả sau:

Đầu ra

Value: 10