Üst Düzey Programlama

advertisement
Üst Düzey Programlama
REFLECTION
(YANSIMA)
Üst Düzey Programlama-reflection
1
Reflection API
Neler yapilir ?
* Bir nesnenin sınıfını tespit edebiliriz
* Sınıfın metotları, alanları, yapıcıları ve süper
sınıfları hakkında bilgi alabiliriz.
* Çalışma anına kadar ismi belirli olmayan bir
sınıftan örnek oluşturabiliriz.
* Nesnenin alanlarına değer atayıp, değerleri
alabiliriz.
* Çağrılacak olan metodun ismi çalışma anına
kadar bilinmese dahi, çalıştırılabilir.
* Tipi ve boyutu çalışma anına kadar bilinmeyen
diziler oluşturulabiliriz.
Üst Düzey Programlama-reflection
2
Sınıfları incelemek
Java reflection API si için aşağıdaki pakette
bulunan sınıflar kullanılır.
java.lang.reflect.*;
Üst Düzey Programlama-reflection
3
Sınıfları incelemek
Örneğin bir sınıfın alanlarını, metotlarını,
yapıcılarını listelemek, göstermek istiyorsunuz.
Bu iş için Class nesnesine ihtiyacınız vardır.
Bu nesne reflection paketinde tanımlı bir
nesnedir. Class nesnesinin metotlarını kullanarak
Constructor, Method, Field gibi sınıfları geri
alabilir ve sınıf hakkında ilgi edinebilirsiniz.
Üst Düzey Programlama-reflection
4
Sınıfları incelemek
Herhangi bir nesnenin Class sınıfını alabilmek için
nesne.getClass() metodu kullanılır.
Class klass = nesne.getClass();
Class b = java.awt.Button.class;
Class c = Class.forName(“sınıfın adı”);
Üst Düzey Programlama-reflection
5
Sınıfları incelemek
Üst Düzey Programlama-reflection
6
Sınıfları incelemek
Üst Düzey Programlama-reflection
7
Sınıfları incelemek
Üst Düzey Programlama-reflection
8
Süper Sınıf
Üst Düzey Programlama-reflection
9
Interface leri öğrenme
Üst Düzey Programlama-reflection
10
Sınıfın Alanlarını Öğrenme
Üst Düzey Programlama-reflection
11
Metotları Öğrenme
Üst Düzey Programlama-reflection
12
Çalışma anında yüklenen sınıftan
nesne oluşturma
Üst Düzey Programlama-reflection
13
Sınıf Alanlarının Değerini Alma
Üst Düzey Programlama-reflection
14
Sınıf Alanlarına Değer Atama
Üst Düzey Programlama-reflection
15
Sınıf Metotlarının Çağrılması
Üst Düzey Programlama-reflection
16
Sınıf Metotlarının Çağrılması
Üst Düzey Programlama-reflection
17
Üst Düzey Programlama
REFLECTION
(YANSIMA)
Üst Düzey Programlama-reflection
18
Download