Java Generics - Lớp

Một khai báo lớp chung trông giống như một khai báo lớp không chung chung, ngoại trừ việc tên lớp được theo sau bởi một phần tham số kiểu.

Phần tham số kiểu của một lớp chung có thể có một hoặc nhiều tham số kiểu được phân tách bằng dấu phẩy. Các lớp này được gọi là lớp được tham số hóa hoặc kiểu được tham số hóa vì chúng chấp nhận một hoặc nhiều tham số.

Cú pháp

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

Ở đâu

  • Box - Box là một lớp chung.

  • T- Tham số kiểu chung được truyền cho lớp chung. Nó có thể lấy bất kỳ Đối tượng nào.

  • t - Bản sao của loại T chung chung.

Sự miêu tả

T là một tham số kiểu được truyền cho Box lớp chung và phải được truyền khi một đối tượng Box được tạo.

Thí dụ

Tạo chương trình java sau bằng bất kỳ trình soạn thảo nào bạn chọn.

GenericsTester.java

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;
   }   
}

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

Đầu ra

Integer Value :10
String Value :Hello World