Kas ir statiskie bloki Java

Kas Ir Statiskie Bloki Java



Programmējot Java, var būt prasība ierakstīt kodu kopu, kas programmētājam jāizpilda klases ielādes laikā atmiņā. Piemēram, pamudinot lietotāju ar kādu ziņojumu pirms lietotajām funkcionalitātēm vai prioritāras piešķiršanu svarīgai funkcionalitātei, to atdalot. Šādos gadījumos Java statiskie bloki palīdz racionalizēt un pārvaldīt funkcijas izstrādātāja galā.

Šis emuārs ilustrēs statisko bloku izmantošanu Java.

Kas ir “statiskie bloki” Java?

Bloks tiek piešķirts kā “ statisks ”, saistot ar to statisko atslēgvārdu. Šiem blokiem ir augstāka prioritāte nekā “ galvenais tā, lai tie tiktu izpildīti pirms galvenais () ” metode.







Sintakse



klaseGalvenais {
statisks {
Sistēma . ārā . println ( 'Sveika pasaule' ) ;
} }

Iepriekš minētajā sintaksē iekļautais bloks ir piešķirts kā ' statisks ” un tiks izsaukts pirms galvenā.



Svarīgi apsvērumi saistībā ar “statiskajiem blokiem”

  • Java statiskie bloki tiek izsaukti automātiski, kad klase tiek ielādēta atmiņā.
  • Tie tiek izpildīti tikai vienu reizi, pat ja ir izveidoti vairāki klases objekti.
  • Nav nekādu ierobežojumu/ierobežojumu statiskās inicializācijas bloku skaitam klasē.
  • Šos blokus var izmantot arī statisko mainīgo inicializācijai.

1. piemērs: “Statisko bloku” izmantošana Java

Šajā piemērā statisko bloku var izmantot, lai novērotu secību, kādā to var izpildīt attiecībā uz galveno:





publicclass Piemērs {
statisks {
Sistēma . ārā . println ( 'Tas ir statisks bloks!' ) ;
}
publicstaticvoidmain ( Stīga [ ] args ) {
Sistēma . ārā . println ( 'Tas ir galvenais!' ) ;
} }

Iepriekš minētajā koda blokā vienkārši iekļaujiet ' statisks ” bloķēt norādīto ziņojumu un nākamajā darbībā parādīt norādīto ziņojumu sadaļā “ galvenais ”.

Izvade



Šajā izvadē var analizēt, ka statiskais bloks tiek izsaukts pirms galvenā.

2. piemērs: Statiskās vērtības izpilde Java “Static Block” ietvaros

Šajā konkrētajā ilustrācijā statisko vērtību var inicializēt statiskajā blokā un vēlāk parādīt galvenajā:

klases pielāgots {
staticint i ;
statisks {
i = 10 ;
Sistēma . ārā . println ( 'Statiskais bloks izsaukts!' ) ;
} }
publicclass Piemērs {
publicstaticvoidmain ( Stīga [ ] args ) {
Sistēma . ārā . println ( pasūtījuma. i ) ;
} }

Iepriekš minētajās koda rindās:

  • Vispirms izveidojiet klasi ar nosaukumu ' pasūtījuma ”.
  • Klasē norādiet “ statisks ' mainīgo un inicializējiet to piešķirtajā ' statisks ' bloķēt.
  • Visbeidzot, izsauciet inicializēto mainīgo galvenajā daļā, atsaucoties uz klasi, kurā tas atrodas.

Izvade

Iepriekš minētajā iznākumā var redzēt, ka arī “ statisks ” bloks tiek izpildīts pirmais, un attiecīgi tiek parādīta arī inicializētā vērtība šajā blokā.

3. piemērs: “Statiskā bloka” izpilde pirms konstruktora

Šajā piemērā statisko bloku var norādīt pirms konstruktora, un attiecīgi var novērot tā prioritāti un izpildi:

klases pielāgots {
statisks {
Sistēma . ārā . println ( 'Šis ir statisks bloks' ) ;
}
pasūtījuma ( ) {
Sistēma . ārā . println ( 'Šis ir konstruktors' ) ;
} }
publicclass Piemērs {
publicstaticvoidmain ( Stīga [ ] args ) {
pielāgots obj1 = jauns pasūtījuma ( ) ;
pielāgots obj2 = jauns pasūtījuma ( ) ;
} }

Iepriekš minētajās koda rindās:

  • Tāpat definējiet klasi ar nosaukumu ' pasūtījuma ”.
  • Tagad norādiet “ statisks ” bloku un iekļaujiet klases konstruktoru, t.i., “ pielāgots() ” ar attiecīgi norādītajiem ziņojumiem.
  • Pamatā izveidojiet divus izveidotās klases objektus, lai attiecīgi izsauktu klases funkcijas prioritātes secībā.

Izvade

Šajā izlaidē var ņemt vērā šādus apsvērumus:

  • Statiskajam blokam tiek piešķirta lielāka prioritāte, salīdzinot ar ietverto konstruktoru.
  • Tiek izveidoti divi klases objekti, bet statiskais bloks tiek izpildīts vienu reizi, kā minēts iepriekš.

Secinājums

' statiskie bloki 'Java tiek izpildīts tikai vienu reizi, kad klase tiek ielādēta atmiņā un tiek izpildīta pirms ' galvenais () ” metode. Rakstā aplūkotie piemēri pierāda, ka šiem blokiem ir augstāka prioritāte nekā attiecīgi galvenajam un klases konstruktoram, un tie tiek izsaukti tikai vienu reizi, neatkarīgi no izveidoto objektu skaita. Šajā emuārā tika apspriesta statisko bloku izmantošana Java.