Legjobb válasz
statikus blokk {}
- statikus blokkokat használnak az osztály statikus adatainak inicializálására, ez statikus erőforrásokat hoz létre.
 - a statikus blokkokat csak egyszer hajtják végre, amint az osztály betöltődik a memóriába.
 - a statikus blokkokat a main () metódus előtt hajtja végre a JavaClass betöltő.
 - Egy osztálynak több Statikus blokkja lehet, amelyek ugyanabban a sorrendben fognak végrehajtani, ahogyan a programba be vannak írva. .
 - statikus {}, minden alkalommal végrehajtásra kerül, amikor az osztály betöltődik.
 - Nem írhatunk statikus blokkokat egy statikus és nem statikus módszer belsejébe (a statikus blokkokat külön írjuk. )
 - Egy statikus blokkon belül csak statikus változók érhetők el.
 - Egy statikus blokkon belül statikus metódust hívhatunk.
 - Belsőleg nem hozhatunk létre metódust statikus blokk.
 - A nem statikus változók és a nem statikus módszerek nem érhetők el a statikus blokk.
 - Ha nem statikus változókhoz vagy metódusokhoz próbál hozzáférni egy statikus blokkon belül, az fordítási idő hibát eredményez,
 
Nem lehet statikus hivatkozás a nem statikus wow () metódusra a staticblock típusból
Tekintsük az alábbi statikus blokk példát.
- Egy statikus blokk van {} egy osztályon belül.
 - Két “ss, j” statikus változó van deklarálva, amelyekben a statikus módszeren belül és a statikus blokkban érhetők el
 - Egy statikus metódus disp () meg van írva, és kinyomtatja a benne lévő statikus változót.
 - Ezt a módszert egy statikus blokkon belül hívják meg. {}
 - statikus változók és statikus módszerek csak egy statikus blokkon belül érhető el
 
 public class staticblock { 
   
  static int ss=23; // initialize the static variable with value; 
  public static void disp() { 
  System.out.println("runnin static block before main method"); 
  System.out.println("Value inside static method is "+ss); 
  } 
   
  static int j; 
   
  static // static block 
  { 
  j=8; 
   
  System.out.println("static block is invoked with the value"+j); // access the static variable inside static block 
  disp(); // calling the static method inside static block 
   
  }  
  public static void main(String[] args) { 
   
  } 
   
 } 
ellenőrizze a kimenetet
a statikus blokkot a8-as értékkel hívják meg
a statikus blokk futtatása a fő módszer előtt
A statikus módszeren belüli érték 23
Válasz
A statikus blokkokat statikus inicializációs blokkokként , egy osztálynak tetszőleges számú statikus blokkja lehet, és bárhol megjelenhetnek a java osztályon belül.
Ez a blokk akkor kerül végrehajtásra, ha az osztály lo emlékezetében adózott. A Java futásidejű rendszer garantálja, hogy a statikus inicializáló blokkokat a forráskódban megjelenő sorrendben hívják meg.
Példa:
 public class Solution{  
  static {  
  System.out.println("Static block - 1");  
  }  
   
  static {  
  System.out.println("Static block - 2");  
  }  
  public static void main(String[] args){  
  System.out.println("Main Method");  
  }  
   
  static {  
  System.out.println("Static block - 3");  
  }  
 }  
Kimenet:
 Static block - 1 
 Static block - 2 
 Static block - 3 
 Main Method