Generic Class

Kategori: Java , 12 Temmuz 2019 , JanFranco


Elimizde değişken tipleri farklı birden fazla dizi olduğunu ve bu dizileri konsola basmamız gerektiğini düşünelim. Java'da böyle bir durumla karşı karşıya kalırsak tek tek for döngüsü açmak yerine değişken tipi belirtmeden fonksiyon yazabilir, değişken tipini fonksiyonu çağırırken verebiliriz. Bu yapılara Generic denmektedir. Örnek üzerinden görelim. İlk olarak bir Student sınıfı açalım:


public class Student {

	private String name;
	
	public Student(String name) {
		this.name = name;
	}

	@Override
	public String toString() {
		return name;
	}
	
}
Şimdi Generic sınıfımızı tanımlayacağız. Generic yapısını şeklinde tanımlarız. E harfi dışında farklı harfler de verilebilir ancak genellikle E kullanılır:

public class Print_class<E> {

	public void print(E[] arr) {
		for(E e : arr) {
			System.out.println(e);
		}
	}
	
}
Sınıfı tanımlarken bir değişken tipi belirteceğiz ve print fonksiyonu bu değişken tipini alarak arr dizisinin tipi haline getirecek. Main_class üzerinden görelim:

public class Main_class {
	
	public static void main(String args[]) {
		
		Character[] char_arr = {'J', 'A', 'V', 'A'};
		Integer[] int_arr = {1, 2, 3, 4};
		String[] string_arr = {"Java", "Phython", "C"};
		Student[] student_arr = {new Student("Jan"), new Student("Jane")};
		
		Print_class<Character> print_char = new Print_class<>();
		Print_class<Integer> print_int = new Print_class<>();
		Print_class<String> print_string = new Print_class<>();
		Print_class<Student> print_student = new Print_class<>();
		
		print_char.print(char_arr);
		print_int.print(int_arr);
		print_string.print(string_arr);
		print_student.print(student_arr);
			
	}
	
}
Konsolda:

J
A
V
A
1
2
3
4
Java
Phython
C
Jan
Jane


Sonraki Yazı: Generic Method
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın