Reflection API – Sınıflar

Java Reflection runtime sırasında sınıfları, interfaceleri, metodları inceleme imkanı sunar. Ayrıca reflection kullanarak yeni bir nesne üretmek, metot çağırmak, değerleri get/set etmek de mümkündür. Sınıfları araştırmak reflection kullanılırken genellikle yapılan ilk şeydir. Sınıflardan çeşitli bilgiler elde edilebilir, bunlardan bazıları : – Class Name (Sınıf ismi) – Class Modifies (public, private, synchronized vs.) – Package Info […]

Java Pass by Value

Pass-by-value ya da Pass-by-reference parametlerin metodlara ne şekilde geçirileceğini ifade eder. Pass-by-reference parametrenin heapteki gerçek adresini geçmek anlamına gelirken, Pass-by-value parametrenin bir kopyasını geçmek anlamına gelir. Bu hem primitive hem de reference tipler için geçerlidir. Pass-by-value kısmına geçmeden önce java’da stack frame ve call stack nasıl çalışıyor incelemekte fayda var. call stack = adresi ve […]

Set Interface

Set duplicate element içermeyen Collection türüdür. Set interface’i sadece Collection’dan inherit edilen metodlara sahiptir. İki Set aynı elemanları içeriyorsa eşittir. 1 – HashSet Hashset sınıfının no-arg constructor’ı kullanılarak boş bir hashSet ya da belirli bir collection baz alınarak hashSet oluşturulabilir. Default olarak initial capacity 16 ve load factor 0.75′ tir. Elemanlar hash table içerisinde tutulur, […]

Comparator Interface

Java API içerisindeki birçok class(String, Date, Calendar, BigInteger, BıgDecimal ve tüm primitive tipler için olan numeric wrapper classlar) Comparable interface’ini implement eder. Bu Comparable interface’i, bu interface’i implement etmiş sınıfa ait elementleri karşılaştırmak için compareTo metodu tanımlar. Peki Comparable interface’ini implement etmeyen sınıfların elementleri nasıl karşılaştırılır? Bunun için java.util.Comparator<T> interface’i implement edilir ve compare metodu […]