logo

Java-muuttujat

Javassa muuttujat ovat tietosäiliöitä, jotka tallentavat tietoarvot Java-ohjelman suorittamisen aikana. Jokaiselle Java-muuttujalle on määritetty tietotyyppi, joka määrittää sen arvon tyypin ja määrän. Muuttuja on tietojen muistipaikan nimi.

Javan muuttujat

Java-muuttuja on muistipaikalle annettu nimi. Se on ohjelman tallennustilan perusyksikkö.

  • Muuttujaan tallennettua arvoa voidaan muuttaa ohjelman suorituksen aikana.
  • Javan muuttujat ovat vain muistipaikalle annettuja nimiä. Kaikki muuttujalle tehdyt toiminnot vaikuttavat tähän muistipaikkaan.
  • Javassa kaikki muuttujat on ilmoitettava ennen käyttöä.

Kuinka ilmoittaa muuttujat Javassa?

Voimme ilmoittaa muuttujat Javassa alla kuvatulla tavalla visuaalisena apuvälineenä.



Kuvasta voidaan helposti havaita, että muuttujaa ilmoittaessamme meidän on otettava huomioon kaksi asiaa, jotka ovat:

  1. tietotyyppi : Tietotyyppi, joka voidaan tallentaa tähän muuttujaan.
  2. data_name: Muuttujalle annettiin nimi.

Tällä tavalla nimi voidaan antaa vain muistipaikalle. Sille voidaan määrittää arvoja kahdella tavalla:

  • Muuttujan alustus
  • Arvon määrittäminen syöttämällä

Kuinka alustaa muuttujat Javassa?

Se voidaan havaita kolmen komponentin avulla, jotka ovat seuraavat:

  • tietotyyppi : Tietotyyppi, joka voidaan tallentaa tähän muuttujaan.
  • muuttujan_nimi : Muuttujalle annettu nimi.
  • arvo : Se on muuttujaan tallennettu alkuarvo.

Kuvitukset:

// Declaring float variable float simpleInterest;  // Declaring and initializing integer variable int time = 10, speed = 20;  // Declaring and initializing character variable char var = 'h';>

Muuttujien tyypit Javassa

Keskustellaan nyt erityyppisistä muuttujista, jotka on lueteltu seuraa:

turbo c++ lataus
  1. Paikalliset muuttujat
  2. Instanssimuuttujat
  3. Staattiset muuttujat

Käsittelemme yksityiskohtaisesti jokaisen tässä lueteltujen muuttujien ominaisuuksia.

1. Paikalliset muuttujat

Lohkossa, menetelmässä tai konstruktorissa määritettyä muuttujaa kutsutaan paikalliseksi muuttujaksi.

  • Nämä muuttujat luodaan, kun lohko syötetään tai funktiota kutsutaan ja se tuhotaan lohkosta poistumisen jälkeen tai kun kutsu palaa funktiosta.
  • Näiden muuttujien laajuus on olemassa vain siinä lohkossa, jossa muuttujat on ilmoitettu, eli voimme käyttää näitä muuttujia vain kyseisessä lohkossa.
  • Paikallisen muuttujan alustaminen on pakollista ennen sen käyttöä määritellyssä laajuudessa.

Menetelmän aika monimutkaisuus:

  Time Complexity:   O(1)   Auxiliary Space:   O(1)>

Alla on yllä olevan lähestymistavan toteutus:

Java




// Java Program to implement> // Local Variables> import> java.io.*;> class> GFG {> >public> static> void> main(String[] args)> >{> >// Declared a Local Variable> >int> var =>10>;> >// This variable is local to this main method only> >System.out.println(>'Local Variable: '> + var);> >}> }>

>

>

csma ja csma cd
Lähtö

Local Variable: 10>

Esimerkki:

Java




package> a;> public> class> LocalVariable {> >public> static> void> main(String[] args)> >{> >// x is a local variable> >int> x =>10>;> >// message is also a local> >// variable> >String message =>'Hello, world!'>;> >System.out.println(>'x = '> + x);> >System.out.println(>'message = '> + message);> >if> (x>>>) {> >// result is a> >// local variable> >String result =>'x is greater than 5'>;> >System.out.println(result);> >}> >// Uncommenting the line below will result in a> >// compile-time error System.out.println(result);> >for> (>int> i =>0>; i <>3>; i++) {> >String loopMessage> >=>'Iteration '> >+ i;>// loopMessage is a local variable> >System.out.println(loopMessage);> >}> >// Uncommenting the line below will result in a> >// compile-time error> >// System.out.println(loopMessage);> >}> }>

>

>

Lähtö:

message = Hello, world! x is greater than 5 Iteration 0 Iteration 1 Iteration 2>

2. Instanssimuuttujat

Ilmentymämuuttujat ovat ei-staattisia muuttujia, ja ne ilmoitetaan luokassa minkä tahansa metodin, rakentajan tai lohkon ulkopuolella.

  • Koska instanssimuuttujat ilmoitetaan luokassa, nämä muuttujat luodaan, kun luokan objekti luodaan, ja tuhotaan, kun objekti tuhotaan.
  • Toisin kuin paikalliset muuttujat, voimme käyttää pääsymäärityksiä esimerkiksi muuttujiin. Jos emme määritä käyttöoikeusmääritteitä, käytetään oletusarvoista käyttöoikeusmääritystä.
  • Ilmentymämuuttujan alustaminen ei ole pakollista. Sen oletusarvo riippuu muuttujan tietotyypistä. varten merkkijono se on tyhjä, varten kellua se On 0.0f, varten int se on 0. Wrapper-luokille, kuten Kokonaisluku se on nolla jne.
  • Ilmentymämuuttujia voidaan käyttää vain luomalla objekteja.
  • Alustamme ilmentymämuuttujat käyttämällä rakentajat kun luot objektia. Voimme myös käyttää instanssilohkot instanssimuuttujien alustamiseksi.

Menetelmän monimutkaisuus:

  Time Complexity:   O(1)   Auxiliary Space:   O(1)>

Alla on yllä olevan lähestymistavan toteutus:

Java




rekha ikä
// Java Program to demonstrate> // Instance Variables> import> java.io.*;> class> GFG {> >// Declared Instance Variable> >public> String geek;> >public> int> i;> >public> Integer I;> >public> GFG()> >{> >// Default Constructor> >// initializing Instance Variable> >this>.geek =>'Shubham Jain'>;> >}> >// Main Method> >public> static> void> main(String[] args)> >{> >// Object Creation> >GFG name =>new> GFG();> >// Displaying O/P> >System.out.println(>'Geek name is: '> + name.geek);> >System.out.println(>'Default value for int is '> >+ name.i);> > >// toString() called internally> >System.out.println(>'Default value for Integer is '> >+ name.I);> >}> }>

>

>

Lähtö

Geek name is: Shubham Jain Default value for int is 0 Default value for Integer is null>

3. Staattiset muuttujat

Staattiset muuttujat tunnetaan myös luokkamuuttujina.

  • Nämä muuttujat ilmoitetaan samalla tavalla kuin ilmentymämuuttujat. Erona on, että staattiset muuttujat ilmoitetaan käyttämällä staattista avainsanaa luokassa minkä tahansa metodin, konstruktorin tai lohkon ulkopuolella.
  • Toisin kuin ilmentymämuuttujat, meillä voi olla vain yksi kopio staattisesta muuttujasta luokkaa kohti, riippumatta siitä, kuinka monta objektia luomme.
  • Staattiset muuttujat luodaan ohjelman suorituksen alussa ja tuhoutuvat automaattisesti suorituksen päätyttyä.
  • Staattisen muuttujan alustaminen ei ole pakollista. Sen oletusarvo riippuu muuttujan tietotyypistä. varten merkkijono se on tyhjä , varten kellua se on 0.0f , varten int se on 0 , varten Käärimiskurssit Kuten Kokonaisluku se on tyhjä, jne.
  • Jos käytämme staattista muuttujaa, kuten instanssimuuttujaa (objektin kautta), kääntäjä näyttää varoitusviestin, joka ei pysäytä ohjelmaa. Kääntäjä korvaa objektin nimen luokan nimellä automaattisesti.
  • Jos käytämme staattista muuttujaa ilman luokan nimeä, kääntäjä lisää luokan nimen automaattisesti. Mutta päästäksemme eri luokan staattiseen muuttujaan, meidän on mainittava luokan nimi, koska kahdella eri luokalla voi olla samanniminen staattinen muuttuja.
  • Staattisia muuttujia ei voida ilmoittaa paikallisesti ilmentymämenetelmän sisällä.
  • Staattiset lohkot voidaan käyttää staattisten muuttujien alustamiseen.

Menetelmän monimutkaisuus:

  Time Complexity:   O(1)   Auxiliary Space:   O(1)>

Alla on yllä olevan lähestymistavan toteutus:

Java


32-bittinen arkkitehtuuri vs. 64-bittinen



// Java Program to demonstrate> // Static variables> import> java.io.*;> class> GFG {> >// Declared static variable> >public> static> String geek =>'Shubham Jain'>;> > >public> static> void> main(String[] args)> >{> >// geek variable can be accessed without object> >// creation Displaying O/P GFG.geek -->käyttämällä> >// static variable> >System.out.println(>'Geek Name is : '> + GFG.geek);> >// static int c=0;> >// above line,when uncommented,> >// will throw an error as static variables cannot be> >// declared locally.> >}> }>

>

>

Lähtö

Geek Name is : Shubham Jain>

Erot ilmentymämuuttujien ja staattisten muuttujien välillä

Keskustellaan nyt ilmentymämuuttujien ja staattisten muuttujien välisistä eroista:

  • Jokaisella objektilla on oma kopio instanssimuuttujasta, kun taas meillä voi olla vain yksi kopio staattisesta muuttujasta luokkaa kohti, riippumatta siitä, kuinka monta objektia luomme. Täten, staattiset muuttujat ovat hyviä muisti hallinta .
  • Ilmentymämuuttujaan yhden objektin avulla tehdyt muutokset eivät näy muissa objekteissa, koska jokaisella objektilla on oma kopio ilmentymämuuttujasta. Staattisen muuttujan tapauksessa muutokset heijastuvat muihin objekteihin, koska staattiset muuttujat ovat yhteisiä kaikille luokan objekteille.
  • Voimme käyttää ilmentymämuuttujia objektiviittausten kautta, ja staattisiin muuttujiin pääsee suoraan luokan nimen avulla .
  • Ilmentymämuuttujat luodaan, kun objekti luodaan käyttämällä avainsanaa 'uusi', ja tuhotaan, kun objekti tuhotaan. Staattiset muuttujat luodaan ohjelman käynnistyessä ja tuhoutuvat ohjelman pysähtyessä.

Syntaksi: Staattiset ja instanssimuuttujat

class GFG {  // Static variable  static int a;     // Instance variable  int b;  }>

Johtopäätös

Tärkeät kohdat, jotka on muistettava artikkeleissa, on mainittu alla:

  • Java-muuttujat on tietosäiliö, joka tallentaa data-arvot Java-ohjelman suorittamisen aikana.
  • Javassa on kolmenlaisia ​​muuttujia paikallisissa muuttujissa, staattisissa muuttujissa ja ilmentymämuuttujissa.

Usein kysytyt kysymykset Java-muuttujista

Q1. Mitä muuttujat Javassa ovat?

Muuttujat ovat Java-säilöjä, jotka voivat tallentaa data-arvoja niiden sisään.

Q2. Mitkä ovat Javan 3 muuttujatyyppiä?

Javassa on kolmen tyyppisiä muuttujia, jotka mainitaan alla:

  1. Paikalliset muuttujat
  2. Staattiset muuttujat
  3. Instanssimuuttujat

Q3. Kuinka ilmoittaa muuttujat Java-esimerkeissä?

Voimme ilmoittaa muuttujat javassa alla mainitulla syntaksilla:

data_type variable_name;>

Esimerkki:

// Integer datatype with var1 name int var1;>

Täytyy lukea:

  • Javan muuttujan ilmoittamisen säännöt
  • Javan muuttujien laajuus
  • Staattisten avainsanojen vertailu C++:ssa ja Javassa
  • Ovatko staattiset paikalliset muuttujat sallittuja Javassa?
  • Instanssimuuttujien piilottaminen Javassa