V Javi, statična je ključna beseda, ki jo je mogoče uporabiti s spremenljivkami, razredi, bloki in metodami. Ko pred katerim koli od njih uporabimo ključno besedo static, to pomeni, da navedeni član pripada samemu tipu. Z drugimi besedami, primerek statičnega člana se ustvari in deli z vsemi primerki razreda.
V tem razdelku bomo uporabili statična ključno besedo z Java razred in tudi razumeti zakaj uporabljamo statični razred?
Statični razred Java
Razred lahko deklariramo kot statični z uporabo ključne besede static. Razred je mogoče razglasiti za statičnega samo, če je a ugnezdeni razred . Ne zahteva nobene reference zunanjega razreda. Lastnost statičnega razreda je, da nam ne dovoljuje dostopa do nestatičnih članov zunanjega razreda.
Da bi razumeli koncept statičnega razreda, moramo najprej razumeti koncept notranji, zunanji, in ugnezdeni razred.
Notranji razred
Pokličejo se razredi, ki so nestatični in ugnezdeni notranji razredi . Upoštevajte, da ne moremo ustvariti primerka notranjega razreda, ne da bi ustvarili primerek zunanjega razreda. Brez uporabe sklicevanja na zunanji primerek razreda lahko primerek notranjega razreda dostopa do članov svojega zunanjega razreda. Zaradi tega je program preprost in jedrnat.
Zunanji razred
Pokliče se razred, v katerem je definiran ugnezdeni razred zunanji razred .
Ugnezdeni razred
Java nam omogoča, da definiramo razred znotraj razreda, ki je znan kot a ugnezdeni razred . Lahko je statičen ali nestatičen. Glavna razlika med statičnim in nestatičnim razredom je, da:
- Primerek statičnega ugnezdenega razreda je mogoče ustvariti brez ustvarjanja primerka njegovega zunanjega razreda.
- Notranji razred lahko dostopa do statičnih in nestatičnih članov zunanjega razreda.
- Do statičnih članov zunanjega razreda lahko dostopa samo statični razred.
Ne pozabite
- Vsi statični razredi so ugnezdeni razredi, vendar obratno ne velja.
- Dostopa lahko samo do statičnih članov zunanjega razreda.
- Znotraj statičnega razreda ni mogoče dostopati do nestatičnih spremenljivk in metod primerkov. Če poskušate dostopati do nestatične reference iz statičnega polja, vrže napako: Na nestatično polje ni mogoče ustvariti statične reference.
- Znotraj statičnega razreda lahko ustvarimo statične bloke, spremenljivke in metode.
- Razred ima lahko več statičnih razredov.
- Ne moremo dostopati do statičnega razreda, če je znotraj statičnega bloka.
- V statičnem razredu je lahko poljubno število statičnih razredov.
Primer statičnega razreda Java
JavaStaticClassExample.java
public class JavaStaticClassExample { private static String s= 'Javatpoint'; //Static and nested class static class StaticNestedClass { //non-static method of the nested class public void show() { //prints the string defined in base class System.out.println(s); } } public static void main(String args[]) { JavaStaticClassExample.StaticNestedClass obj = new JavaStaticClassExample.StaticNestedClass(); //invoking the method of the nested class obj.show(); } }
Izhod:
Javatpoint
Zakaj uporabljamo statični razred v Javi?
V Javi se ključna beseda static uporablja predvsem za upravljanje pomnilnika. Statično ključno besedo lahko uporabimo s spremenljivkami, metodami, bloki in razredi. Uporaba statičnega razreda je način združevanja razredov skupaj. Uporablja se tudi za dostop do primitivnega člana obdajajočega razreda prek reference objekta. Statične razrede naloži nalagalnik razredov le ob prvi uporabi, ne pa takrat, ko se naloži razred, ki ga obdaja.