OCA Java imtahan mövzuları

Static Imports

Import ona görə əlverişlidir ki, biz hər dəfə kod daxilində hansısa classın adını istifadə edəndə onu paket adı ilə tam formada yazmayaq, paketi import edək, qısa class adından istifadə edək. Static import adi importdan fərqli olaraq classları deyil, ancaq classın static member`lərini import etmək üçündür.

import java.util.List;
import static java.util.Arrays.asList;           // static import
public class StaticImports {
  public static void main(String[] args) {       
     List<String> list = asList("one", "two");   // without Arrays
  }   
}

Əgər biz  StaticImports classında asList() adlı yeni metod yaratsaq, import olunmuş metodla class daxilindəki metod adı eyni olacaq və bu zaman java öncəlik sırasını class daxilində yaradılmış metoda verəcək.

Bir başqa nümunəyə baxaq:

import static java.util.Arrays;          // line1, DOES NOT COMPILE
import static java.util.Arrays.asList; 
static import java.util.Arrays.*;        // line2, DOES NOT COMPILE
class BadStaticImports {
  public static void main(String[] args) {       
    Arrays.asList("one");                // line3, DOES NOT COMPILE
  }   
}
  • line1 – class static açar sözü ilə import edilə bilməz, static import ancaq static member`ləri import edir;
  • line2 – ardıcıllıq sırası pozulub, static sözü həmişə import sözündən sonra gəlməlidir;
  • line3 – biz line2`də ancaq Arrays classının asList() metodunu import etmişik, Arrays classının özünü yox.

Eyniadlı 2 static metodu və ya 2 static dəyişəni static import etdikdə compile xətası baş verir:

import static statics.A.TYPE;
import static statics.B.TYPE;         // DOES NOT COMPILE

 

[topics lang=az]

About the author

Mushfiq Mammadov

Leave a Comment


The reCAPTCHA verification period has expired. Please reload the page.

 

This site uses Akismet to reduce spam. Learn how your comment data is processed.