Hvad er statiske blokke i Java

Hvad Er Statiske Blokke I Java



Under programmering i Java kan der være et krav om at skrive et sæt koder, som programmøren skal udføre under klassens indlæsning i hukommelsen. For eksempel at bede brugeren om en besked før de anvendte funktioner i hovedsagen eller prioritere en vital funktionalitet ved at adskille den. I sådanne tilfælde er statiske blokke i Java en hjælp til at strømline og administrere funktionaliteterne i udviklerens ende.

Denne blog vil illustrere brugen af ​​statiske blokke i Java.

Hvad er 'statiske blokke' i Java?

En blok er tildelt som ' statisk ” ved at knytte det statiske søgeord til det. Disse blokke har højere forrang end ' vigtigste sådan at de udføres før hoved() ” metode.







Syntaks



klasseMain {
statisk {
System . ud . println ( 'Hej Verden' ) ;
} }

I ovenstående syntaks er den inkluderede blok tildelt som ' statisk ” og vil blive påberåbt før den vigtigste.



Vigtige overvejelser vedrørende 'statiske blokke'

  • Statiske blokke i Java aktiveres automatisk, når klassen indlæses i hukommelsen.
  • Disse udføres kun én gang, selvom der oprettes flere klasseobjekter.
  • Der er ingen begrænsning/begrænsning på antallet af statiske initialiseringsblokke inden for en klasse.
  • Disse blokke kan også bruges til at initialisere de statiske variable.

Eksempel 1: Brug af 'Static Blocks' i Java

I dette eksempel kan den statiske blok bruges til at observere rækkefølgen, hvori den kan udføres med hensyn til hoved:





publicclass eksempel {
statisk {
System . ud . println ( 'Dette er en statisk blok!' ) ;
}
publicstaticvoidmain ( Snor [ ] args ) {
System . ud . println ( 'Dette er hoved!' ) ;
} }

I ovenstående kodeblok skal du blot inkludere en ' statisk ” blokere for at akkumulere den angivne besked og i næste trin, vis den givne besked i “ vigtigste ”.

Produktion



I dette output kan det analyseres, at den statiske blok påkaldes før main.

Eksempel 2: Udførelse af statisk værdi inden for 'Statisk blok' i Java

I denne særlige illustration kan en statisk værdi initialiseres i den statiske blok og senere vises i hovedet:

klassebrug {
staticint i ;
statisk {
jeg = 10 ;
System . ud . println ( 'Statisk blok kaldet!' ) ;
} }
publicclass eksempel {
publicstaticvoidmain ( Snor [ ] args ) {
System . ud . println ( brugerdefinerede. jeg ) ;
} }

I ovenstående kodelinjer:

  • Først og fremmest skal du oprette en klasse med navnet ' brugerdefinerede ”.
  • Inden for klassen skal du angive en ' statisk ' variabel og initialiser den i den tildelte ' statisk ” blok.
  • Til sidst skal du kalde den initialiserede variabel i hovedet ved at henvise til den klasse, den er indeholdt i.

Produktion

I ovenstående resultat kan det ses, at ligeledes ' statisk ” blok udføres først, og den initialiserede værdi i denne blok vises også hhv.

Eksempel 3: Udførelse af 'Statisk blok' før konstruktør

I dette eksempel kan den statiske blok specificeres før konstruktøren, og dens forrang og udførelse kan observeres i overensstemmelse hermed:

klassebrug {
statisk {
System . ud . println ( 'Dette er en statisk blok' ) ;
}
brugerdefinerede ( ) {
System . ud . println ( 'Dette er en konstruktør' ) ;
} }
publicclass eksempel {
publicstaticvoidmain ( Snor [ ] args ) {
brugerdefineret obj1 = ny brugerdefinerede ( ) ;
brugerdefineret obj2 = ny brugerdefinerede ( ) ;
} }

I ovenstående kodelinjer:

  • Definer ligeledes en klasse ved navn ' brugerdefinerede ”.
  • Angiv nu ' statisk ' blokere og inkludere klassekonstruktøren, dvs. ' brugerdefinerede() ” at have de angivne beskeder hhv.
  • I hovedsagen skal du oprette to objekter af den oprettede klasse for at påberåbe klassens funktionaliteter i overensstemmelse hermed.

Produktion

I dette output kan følgende overvejelser udføres:

  • Den statiske blok får højere forrang sammenlignet med den indeholdte konstruktør.
  • To objekter i klassen oprettes, men den statiske blok udføres én gang, som diskuteret før.

Konklusion

Det ' statiske blokke ' i Java udføres kun én gang, når en klasse er indlæst i hukommelsen og udføres før ' hoved() ” metode. De diskuterede eksempler i artiklen beviser, at disse blokke har højere forrang end henholdsvis hoved- og klassekonstruktøren og kun påkaldes én gang, uanset antallet af oprettede objekter. Denne blog diskuterede brugen af ​​statiske blokke i Java.