Java Generics - Tür Çıkarımı

Tür çıkarımı, Java derleyicisinin tür bağımsız değişkenlerini kontrol etmek ve belirlemek için bir yöntem çağrısına ve karşılık gelen bildirimine bakma yeteneğini temsil eder. Çıkarım algoritması, bağımsız değişkenlerin türlerini kontrol eder ve varsa, atanan tür döndürülür. Çıkarım algoritmaları, tüm tür parametrelerini doldurabilecek belirli bir tür bulmaya çalışır.

Derleyici, tür çıkarımının kullanılmaması durumunda denetlenmeyen dönüştürme uyarısı oluşturur.

Sözdizimi

Box<Integer> integerBox = new Box<>();

Nerede

  • Box - Box, genel bir sınıftır.

  • <> - Elmas operatörü, tür çıkarımını belirtir.

Açıklama

Elmas operatörünü kullanarak, derleyici parametrenin türünü belirler. Bu operatör Java SE 7 sürümünden itibaren mevcuttur.

Misal

Seçtiğiniz herhangi bir düzenleyiciyi kullanarak aşağıdaki java programını oluşturun.

GenericsTester.java

package com.tutorialspoint;

public class GenericsTester {
   public static void main(String[] args) {
      //type inference   
      Box<Integer> integerBox = new Box<>();
      //unchecked conversion warning
      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;
   }   
}

Bu, aşağıdaki sonucu verecektir.

Çıktı

Integer Value :10
String Value :Hello World