Java Generics - сырые типы
Необработанный тип - это объект универсального класса или интерфейса, если аргументы его типа не передаются во время его создания. Следующий пример продемонстрирует вышеупомянутую концепцию.
пример
Создайте следующую программу Java, используя любой редактор по вашему выбору.
GenericsTester.java
package com.tutorialspoint;
public class GenericsTester {
public static void main(String[] args) {
Box<Integer> box = new Box<Integer>();
box.set(Integer.valueOf(10));
System.out.printf("Integer Value :%d\n", box.getData());
Box rawBox = new Box();
//No warning
rawBox = box;
System.out.printf("Integer Value :%d\n", rawBox.getData());
//Warning for unchecked invocation to set(T)
rawBox.set(Integer.valueOf(10));
System.out.printf("Integer Value :%d\n", rawBox.getData());
//Warning for unchecked conversion
box = rawBox;
System.out.printf("Integer Value :%d\n", box.getData());
}
}
class Box<T> {
private T t;
public void set(T t) {
this.t = t;
}
public T getData() {
return t;
}
}
Это даст следующий результат.
Вывод
Integer Value :10
Integer Value :10
Integer Value :10
Integer Value :10