Java Reflection

0 3,932

Java da reflection az bilinen konular arasında yer almaktadır ve dolayısıyla böyle bir şeyin gücünün de farkında değiliz. Java reflection çok güçlü bir konsepte sahiptir ve bu gücü sayesinde JEE frameworklerin belkemiği diyebiliriz.

  • JUnit
  • Spring
  • Hibernate

Refleciton ile class, interface method ve attiibüte’lere erişmeyi ve bunlar üzerinde run time da işlem yapmayı sağlar.

Nerede kullanılıyor?

  • Eclipse, Netbeans autocomplete özelliği vb.
  • Debuger
  • Test Tools

 

Reflection Örnek

 

 

 

Yukarı verilen kod çalıştırıldığında görüldüğü üzere kendi yazdığımız method ve constructor larımız gelmiştir burada konumuza dahil olmasa da kendi yazdığımız metod listesi içinde Object classının metodları da listelenmiştir ki Java object oriented bir dildir ve classlar en üstte Object classından extend edilmiştir ve dolayısıyla listemizde Object classının metodları da listelenmiştir burada karşılaştırmalı olarak gösterilmiştir.

Peki bütün classlara bu şekilde erişmek istersem ne olur?

Tam da bu noktada işimizi kolaylaştıran bir tool var ve tam olarak bu işi yapıyor. Bu program ise Small Simple Safe.  Açıklamamıza gerek kalmadan, en güzel ve  açık bir şekilde tool kendini anlatıyor. Reflection en güzel örneği desek muhtemelen yanlış olmaz ki benzer bir tool ile karşılaşmadım. Kısaca SSS dediğimiz 😊 toola.

https://github.com/maeyler/SmallSimpleSafe bu adresten indirebilir ve açık kaynaklı bir şekilde kodlara ulaşabilir hatta sizde katkı sağlayabilirsiniz.

 

Email adresiniz yayınlanmayacaktır.