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