Java’da Static Import Özelliği

Kısa bir soru ile başlamak istiyorum.

Aşağıdaki kod bloku derlenir mi ? Derlense dahi çalışır mı ?

package sys;
// line n1
class Bilgisayar {
    public void handleOutput(Printer p) {
        printJob("Bilgisayar");
    }
}

package sys;
class Printer {
    public static void printJob(String s) {
       System.out.println(s);
 }
}

Cevabı derlenmez çünkü printJob()  metodu bilgisayar sınıfı içerisinde bulunmamaktadır. Özetle kapsam dışıdır.

Printer.printJob("Bilgisayar");

İlk yöntem yukarıda gösterildiği üzere uzun uzun sınıfIsmi. methodAdi  şeklinde yazmaktır. İkinci yöntem ise  static import özelliğinin kullanılmasıdır.

import static sys.Printer.printJob;

class Bilgisayar {
    public void handleOutput(Printer p) {
        printJob("Bilgisayar");
    }
}

Static import özelliği java 1.5 ‘de gelmiştir ve amacı kodun okunurluğunu artırmaktır.

No Comments

Post a Comment

Comment
Name
Email
Website