Java bruker først og fremst “statisk”Søkeord for minnestyring. Variabler, blokker og metoder kan alle brukes med det statiske nøkkelordet. I stedet for en bestemt klasseforekomst, refererer det statiske søkeordet til klassen som helhet. Uten det statiske nøkkelordet, i Java, blir metodene og variablene som standard vurdert “ikke-statisk”.
Denne artikkelen vil forklare det statiske og ikke-statiske i Java.
Hva er statisk i Java?
“statisk”Er et nøkkelord i Java brukt for minnestyring av variablene og metodene som tilhører en klasse. I Java er det statiske variabler og statiske metoder i klassene, som vil bli diskutert i seksjonene nedenfor.
Hvordan lage statiske variabler i Java?
De statiske variablene er klassevariabler og kan opprettes på klassenivå. Når en variabel er erklært som “statisk”, Oppretter kompilatoren en kopi av variabelen og deler den med alle objekter i klassen. På den annen side fungerer statiske variabler effektivt som globale variabler. Det kan hentes med klassenavnet alene og trenger ikke å brukes med et objekt. Det sparer minne og forbedrer programvarens minneeffektivitet.
Syntaks
For å lage den statiske variabelen i en klasse, bruk syntaksen nedenfor:
offentlig statisk int x = 10;
Her, “x”Er den statiske variabelen som lagrer heltallsverdien”10”.
La oss diskutere hva en statisk metode i Java er og hvordan du lager den.
Hvordan lage statisk metode i Java?
En statisk klassemetode kan nås uten å lage et objekt eller forekomst av en definert klasse. Den kan bare hente statiske datamedlemmer og metoder i samme klasse eller en annen klasse; De har ikke tilgang til ikke-statiske metoder eller variabler.
I tillegg kan ethvert statiske datamedlemmer verdier endres ved en statisk metode.
Syntaks
Følg den gitte syntaks for å lage en statisk metode i Java:
public static void display ()
// Metodens kropp
Syntaksen nedenfor indikerer hvordan du kaller den statiske metoden:
Klassenavn.staticMethod ()
Merk: For å ringe den statiske metoden, vil vi bruke klassenavnet. Vi trenger ikke klasseobjektet for å kalle metoden fordi det statiske nøkkelordet fikser et spesifikt minnested for den metoden i RAM, og minnetildelingen skjer bare en gang i den statiske metoden.
Eksempel
Vi vil lage en statisk metode som heter “vise()”I“Beskjed”Klasse og påkalle det i en annen klasse:
Klassemelding
public static void display ()
System.ute.Println ("Velkommen til Linuxhint");
Her, i hovedmetoden () til en annen klasse som heter “Eksempel”, Vil vi kalle den statiske metodedisplayet () uten å lage et forekomst eller objekt i“Beskjed”Klasse:
Eksempel på offentlig klasse
public static void main (String [] args)
Beskjed.vise();
Utgangen viser at vi har fått tilgang til den statiske metoden til klassen i en annen klasse:
La oss flytte til ikke-statisk i Java.
Hva er ikke-statisk i Java?
Hver metode og variabel i Java uten "statisk”Søkeord er“ikke-statisk”, Og det kan få tilgang til alle statiske metoder og variabler. Det ikke-statiske søkeordet bruker runtime binding, også kjent som dynamisk binding.
Hvordan lage ikke-statiske variabler i Java?
En "ikke-statisk”Variabel er en klassevariabel som ikke er statisk. De ikke-statiske variablene kalles også lokale variabler. Det er definert i en metode, konstruktør eller blokkering. Omfanget av disse variablene er begrenset. Derfor kan vi bare få tilgang til disse variablene i den definerte blokken.
Syntaks
Bruk den gitte syntaks for å lage en ikke-statisk variabel i Java:
offentlig int x = 10;
Her, “x”Er den lokale variabelen som kalles en ikke-statisk variabel som lagrer heltallstypeverdien”10”.
La oss se hva en ikke-statisk metode er i Java og hva er skapelsesprosessen.
Hvordan lage ikke-statisk metode i Java?
Java tillater deg å overstyre den ikke-statiske metoden. Denne typen metoder opprettes ved hjelp av nøkkelordet “ikke-statisk”. I ikke-statiske metoder brukes dynamisk og runtime-binding. Som et resultat kan vi ikke kalle det uten klassens tilfelle. I dette tilfellet tildeles minnet når metoden kalles i den ikke-statiske metoden, og det skjer hver gang.
Syntaks
Følg den gitte syntaks for den ikke-statiske metoden:
public void display ()
// Metodens kropp
For å påkalle den ikke-statiske metoden i Java, må vi først lage et objekt i klassen og deretter kalle den.
La oss flytte til eksemplet for å se hvordan du får tilgang til en ikke-statisk metode i Java.
Eksempel
Her får vi tilgang til den ikke-statiske metoden i en klasse i en annen klasse ved å lage et objekt i klassen. For å gjøre det, først vil vi lage en ikke-statisk metode som heter “vise()”Det vil skrive ut uttalelsen ved å bruke“System.ute.println ()”Metode i en“Beskjed”Klasse:
Klassemelding
public void display ()
System.ute.Println ("Velkommen til Linuxhint");
Nå vil vi lage et objekt “msg”Av meldingsklassen i Main () -metoden i den andre klassen som heter“Eksempel”Da vil vi kalle metoden som ikke er-Static Display () med den, fordi de ikke-statiske metodene ikke er tilgjengelig uten objektet for klassen:
Eksempel på offentlig klasse
public static void main (String [] args)
Melding msg = ny melding ();
msg.vise();
Produksjon
La oss gå mot de viktigste forskjellspunktene mellom en statisk metode og ikke-statisk metode i Java.
Forskjell mellom statiske og ikke-statiske metoder i Java
statisk metode | Ikke-statisk metode |
Det er erklært med "statisk”Nøkkelord. | Ingen grunn til å erklære med noe nøkkelord. |
Det er medlem av en klasse, men er ikke medlem av en forekomst av den klassen. | Den tilhører en klasse og er både medlem og en forekomst av den klassen. |
Bare statiske metoder og datamedlemmer fra samme klasse eller en annen klasse kan nås av den. | Det kan få tilgang til statiske og ikke-statiske datamedlemmer og metoder i klassen. |
Minnetildeling skjer bare en gang. | Når metoden kalles, blir minnet tildelt. |
Ingen objekter må opprettes for å få tilgang til det. | For å få tilgang til det, må du opprette et klasseobjekt. |
Den bruker kompileringstid eller tidlig binding. | Den bruker dynamisk eller runtime binding. |
Det kan ikke overstyres. | Det kan overstyres. |
Vi har inkludert all veiledning for Javas statiske og ikke-statiske variabler og metoder.
Konklusjon
I Java er variablene og metodene ikke-statiske som standard, men hovedmetoden () er statisk. For å håndtere minne kan du bruke det statiske nøkkelordet. De statiske metodene kan gjøres tilgjengelige uten å lage et klasseobjekt, i motsetning til de ikke-statiske metodene, som ikke kan nås uten å lage et objekt. I denne artikkelen forklarte vi de statiske og ikke-statiske variablene og metodene med detaljerte forklaringer og eksempler.