Mens programmering i Java, kan det være et krav om å skrive et sett med koder som programmereren trenger å utføre under klassens lasting i minnet. For eksempel å be brukeren med litt melding før de anvendte funksjonalitetene i hovedsak eller prioritere en viktig funksjonalitet ved å skille den. I slike tilfeller hjelper statiske blokker i Java med å effektivisere og håndtere funksjonalitetene ved utviklerens slutt.
Denne bloggen vil illustrere bruken av statiske blokker i Java.
Hva er "statiske blokker" i Java?
En blokk tildeles som “statisk”Ved å knytte det statiske nøkkelordet til det. Disse blokkene har høyere forrang enn “hoved-”Slik at de blir henrettet før“hoved()”Metode.
Syntaks
Classmain
statisk
System.ute.Println ("Hello World");
I syntaks ovenfor tildeles den inkluderte blokken som "statisk”Og vil bli påkalt før hoved.
Viktige hensyn angående "statiske blokker"
- Statiske blokker i Java påberopes automatisert når klassen er lastet i minnet.
- Disse utføres bare en gang, selv om flere klasseobjekter er opprettet.
- Det er ingen begrensning/begrensning i antall statiske initialiseringsblokker i en klasse.
- Disse blokkene kan også brukes til å initialisere de statiske variablene.
Eksempel 1: Bruk av “statiske blokker” i Java
I dette eksemplet kan den statiske blokken brukes til å observere sekvensen den kan utføres i forhold til hoved:
PublicClass eksempel
statisk
System.ute.Println ("Dette er en statisk blokk!");
publicStaticVoidmain (String [] args)
System.ute.Println ("Dette er Main!");
I ovennevnte kodeblokk, inkluderer du ganske enkelt en "statisk”Blokk som akkumulerer den uttalte meldingen og i neste trinn, vis den gitte meldingen i“hoved-”.
Produksjon
I denne utgangen kan det analyseres at den statiske blokken påkalles før hoved.
Eksempel 2: Utførende statisk verdi innen “statisk blokk” i Java
I denne spesielle illustrasjonen kan en statisk verdi initialiseres i den statiske blokken og senere vist i hovedsak:
classCustom
staticint i;
statisk
i = 10;
System.ute.println ("statisk blokk kalt! ");
PublicClass eksempel
publicStaticVoidmain (String [] args)
System.ute.println (tilpasset.Jeg);
I kodelinjene ovenfor:
- Først av alt, lag en klasse som heter “tilpasset”.
- Innenfor klassen, spesifiser en "statisk”Variabel og initialiser den i den tildelte“statisk”Blokk.
- Til slutt påkaller den initialiserte variabelen i hovedsak ved å referere til klassen den er inneholdt.
Produksjon
I ovennevnte utfall kan det sees at på samme måte "statisk”Blokk utføres først, og den initialiserte verdien i denne blokken vises også henholdsvis.
Eksempel 3: Utfør "Statisk blokk" før konstruktør
I dette eksemplet kan den statiske blokken spesifiseres før konstruktøren, og dens forrang og utførelse kan observeres deretter:
classCustom
statisk
System.ute.Println ("Dette er en statisk blokk");
tilpasset()
System.ute.Println ("Dette er en konstruktør");
PublicClass eksempel
publicStaticVoidmain (String [] args)
tilpasset obj1 = ny tilpasset ();
tilpasset obj2 = ny tilpasset ();
I kodelinjene ovenfor:
- På samme måte definer en klasse som heter “tilpasset”.
- Nå, spesifiser "statisk”Blokk og inkluderer klassekonstruktøren, jeg.e., “tilpasset()”Å ha de uttalte meldingene henholdsvis.
- I hovedsak kan du lage to objekter i den opprettede klassen for å påkalle klassefunksjonalitetene i rekkefølgen av forrang deretter.
Produksjon
I denne utgangen kan følgende betraktninger gjennomføres:
- Den statiske blokken får høyere forrang sammenlignet med den inneholdte konstruktøren.
- To objekter i klassen er opprettet, men den statiske blokken utføres en gang, som diskutert før.
Konklusjon
“statiske blokker”I Java utfør bare en gang når en klasse er lastet inn i minnet og utføres før“hoved()”Metode. De diskuterte eksemplene i artikkelen viser at disse blokkene har høyere forrang enn henholdsvis hoved- og klassekonstruktøren, og bare påberopes en gang, uavhengig av antall opprettede objekter. Denne bloggen diskuterte bruken av statiske blokker i Java.