Geçenlerde ‘da gezinirken konuya rastladım. Java’da kullanılan ve az kişinin bildiği özellikler şeklinde. Orada adı geçen bazı şeyler o konuya ilişkin uğraşanlar için ilginç gelecektir ama Double Brace Initialization şeklinde bir özellikle karşılaştım. Aslında Collections ile alakalı olduğu için nasıl oldu da bilinmediğini pek çözemedim.

Mesela hızlı bir şekilde bir Hashtable yaratıp içerisine bir kaç nesne koyup onu bir yere göndereceksiniz. İşte ilk satır yeni nesneyi yaratıp altındanki satırlarda da onunla alakalı işleri yapıp bu işi halledersiniz;

Hashtable<String, String> myHashtable = new Hashtable<String, String>(); 
myHashtable.put("a", "A"); 
myHashtable.put("b", "B"); 
someMethod(myHashtable);

Aslında olması gereken de budur :)

Ancak bazı durumlarda hızlı bir şekilde bir hashtable yaratıp, tek satırda bir method çağrısı yapma isteyebilirsiniz. Bunun içinde;

someMethod(new Hashtable<String, String>()); 

Tabi tek satırda halledilebilen bir işlem olsa da, okunulabilirliği düşürdüğü için, kullanımının pek de hoş durmadığını söyleyebilirim.

şu