Mikä on staattinen lohko?


Paras vastaus

staattinen lohko {}

  1. staattisia lohkoja käytetään luokan staattisten tietojen alustamiseen, se luo staattisia resursseja.
  2. staattisia lohkoja suoritetaan vain kerran, heti kun luokka ladataan muistiin.
  3. staattiset lohkot suoritetaan ennen main () -menetelmää JavaClass-latauslaitteella.
  4. Luokalla voi olla useita staattisia lohkoja, jotka suoritetaan samassa järjestyksessä kuin ne on kirjoitettu ohjelmaan .
  5. staattinen {}, se suoritetaan joka kerta, kun luokka latautuu.
  6. Emme voi kirjoittaa staattisia lohkoja staattisen menetelmän ja ei-staattisen menetelmän sisään (staattiset lohkot kirjoitetaan erikseen )
  7. Vain staattiset muuttujat voivat olla käytettävissä staattisen lohkon sisällä.
  8. Voimme kutsua staattista menetelmää staattisen lohkon sisällä.
  9. Emme voi luoda mitään menetelmiä sisälle staattinen lohko.
  10. Ei staattisia muuttujia ja ei-staattisia menetelmiä ei voida käyttää a: n sisällä staattinen lohko.
  11. Jos yrität käyttää ei-staattisia muuttujia tai menetelmiä staattisen lohkon sisällä, se antaa kääntöaikavirheen,

Ei voi tehdä staattista viittausta ei-staattiseen menetelmään wow () staattisen eston tyypistä

Harkitse alla olevaa esimerkkiä staattisesta lohkosta.

  • Luokan sisällä on yksi staattinen lohko {}.
  • On ilmoitettu kaksi staattista muuttujaa ”ss, j”, joissa niihin pääsee staattisen menetelmän sisällä ja staattisessa lohkossa
  • Staattinen menetelmä disp () kirjoitetaan ja tulostaa staattisen muuttujan sen sisälle.
  • Tätä menetelmää kutsutaan staattisen lohkon sisään {}
  • staattisia muuttujia ja staattisia menetelmiä voidaan kutsua käytettävissä vain staattisen lohkon sisällä

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) {

}

}

tarkista lähtö

staattinen lohko kutsutaan arvolla8

staattinen staattinen lohko ennen päämenetelmää

Staattisen menetelmän sisällä oleva arvo on 23

Vastaus

Staattisia lohkoja kutsutaan myös nimellä Staattiset alustuslohkot , luokassa voi olla mikä tahansa määrä staattisia lohkoja ja ne voivat näkyä missä tahansa java-luokan sisällä.

Tämä lohko suoritetaan kun luokka aded muistiin. Java-ajonaikainen järjestelmä takaa, että staattiset alustuslohkot kutsutaan siinä järjestyksessä kuin ne esiintyvät lähdekoodissa.

Esimerkki:

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");

}

}

Tulos:

Static block - 1

Static block - 2

Static block - 3

Main Method

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *