Staattisen ja lopullisen ero Java: ssa

Kirjoittaja: Laura McKinney
Luomispäivä: 2 Huhtikuu 2021
Päivityspäivä: 11 Saattaa 2024
Anonim
Staattisen ja lopullisen ero Java: ssa - Tekniikka
Staattisen ja lopullisen ero Java: ssa - Tekniikka

Sisältö


Staattinen ja lopullinen ovat Java-avainsanoja. Staattiseen jäseneen pääsee ennen luokkaobjektin luomista. Finaalilla on erilainen vaikutus luokkaan, menetelmiin ja muuttujiin sovellettaessa. Suurin ero staattisen ja lopullisen avainsanan välillä on se staattinen on avainsana, jolla määritellään luokan jäsen, jota voidaan käyttää riippumatta luokan kaikista kohteista. Lopullinen avainsanaa käytetään ilmoittamaan vakiomuuttuja, menetelmä, jota ei voida ohittaa, ja luokka, jota ei voida periä.

  1. Vertailutaulukko
  2. Määritelmä
  3. Keskeiset erot
  4. johtopäätös

Vertailutaulukko

Vertailun perusteetStaattinenLopullinen
sovellettavatStaattinen avainsana soveltuu sisäkkäiseen staattiseen luokkaan, muuttujiin, menetelmiin ja lohkoon.Lopullinen avainsana soveltuu luokkaan, menetelmiin ja muuttujiin.
alustusStaattisen muuttujan alustaminen ei ole pakollista sen ilmoittamishetkellä.Viimeisen muuttujan alustaminen on pakollista sen ilmoittamishetkellä.
muutosStaattinen muuttuja voidaan alustaa uudelleen.Lopullista muuttujaa ei voida alustaa uudelleen.
menetelmätStaattiset menetelmät voivat käyttää vain luokan staattisia jäseniä, ja niitä voidaan kutsua vain muilla staattisilla menetelmillä.Lopullisia menetelmiä ei voida periä.
luokkaStaattisia luokkaobjekteja ei voida luoda, ja se sisältää vain staattisia jäseniä.Kukaan luokka ei voi periä lopullista luokkaa.
LohkoStaattista lohkoa käytetään alustamaan staattiset muuttujat.Lopullinen avainsana ei tue sellaista lohkoa.


Määritelmä Staattinen

Staattinen on avainsana, jota voidaan soveltaa luokkiin, muuttujiin, menetelmiin ja lohkoihin. Luokan jäsenet, luokka ja lohkot voidaan tehdä staattisiksi käyttämällä "staattista" avainsanaa luokan jäsenten, luokan ja lohkojen nimen edessä. Kun luokan jäsen julistetaan staattiseksi, siitä tulee maailmanlaajuinen kaikille muille luokan jäsenille. Luokan staattinen jäsen ei vie muistia tapauskohtaisesti, ts. Kaikilla objekteilla on sama kopio staattisesta jäsenestä. Staattista elintä voidaan käyttää riippumattomasti minkä tahansa luokan objektista. Voit käyttää luokan staattista jäsentä ennen sen objektin luomista. Paras esimerkki staattisesta jäsenestä on main () -menetelmä, se julistetaan staattiseksi, jotta siihen voidaan vedota ennen minkään objektin olemassaoloa. Yleinen muoto luokan staattisen jäsenen käyttämiseen:


luokan_nimi.staattinen_jäsen // käyttävä luokan staattista jäsentä

Yllä olevassa koodissa luokan_nimi on sen luokan nimi, jossa staattinen_jäsen on määritelty. Staattinen jäsen voi olla staattinen muuttuja tai staattinen menetelmä

Staattiset muuttujat:

  • Staattinen muuttuja toimii kuin globaali muuttuja kaikille muille luokan tietojäsenille.
  • Staattista muuttujaa voidaan käyttää ennen luokan minkä tahansa objektin olemassaoloa.
  • Staattista muuttujaa voidaan käyttää luokan nimellä, johon se on määritelty, jota seuraa piste (.) -Operaattori.

Staattiset menetelmät:

  • Staattinen menetelmä voi kutsua vain muita staattisia menetelmiä.
  • Staattinen menetelmä voi käyttää vain staattista tietoa.
  • Staattista menetelmää ei voida missään olosuhteissa kutsua nimellä "tämä" tai "super".
  • Staattista menetelmää voidaan käyttää luokan nimellä, johon se on määritelty, jota seuraa piste (.) -Operaattori.

Staattinen luokka:

  • Javalla on sisäkkäisen staattisen luokan käsite. Äärimmäisestä luokasta ei voida tehdä staattista, kun taas sisimmästä luokasta ei voida tehdä staattista.
  • Staattinen sisäkkäinen luokka ei pääse ulkopuolisen luokan ei-staattiseen jäseneen.
  • Se pääsee vain ulomman luokan staattisiin jäseniin.

Staattinen lohko:

Staattinen lohko suoritetaan vain kerran, kun luokka ladataan. Käytetään luokan staattisten muuttujien alustamiseen.

C ++:

C ++: ssa meillä on sekä staattisten muuttujien että staattisten funktioiden käsite, kun taas C ++ ei tue staattista luokkaa.

C #:

C # tukee myös staattista luokkaa, staattisia muuttujia ja staattista luokkaa.

java:

Java tukee staattista sisäkkäistä luokkaa, staattisia muuttujia, staattisia menetelmiä.

Määritelmä Lopullinen

Lopullinen on avainsana, jota voidaan soveltaa luokkaan, muuttujaan ja menetelmiin. Luokka, muuttuja ja menetelmä julistetaan lopulliseksi käyttämällä avainsanaa “lopullinen”, jota edeltää niiden nimi. Kun muuttuja on julistettu lopulliseksi; sitä ei voida muokata edelleen ohjelmassa. Lopullinen muuttuja on alustettava aikailmoituksessa. Lopulliset muuttujat eivät vie muistia tapauskohtaisesti. Kaikilla luokkien objekteilla on sama kopio lopullisesta muuttujasta.

Lopullisena ilmoitettua menetelmää ei voida ohittaa sen luokan alaluokalla, jossa lopullinen menetelmä ilmoitetaan. Kun luokka julistetaan lopulliseksi, toinen luokka ei voi periä loppuluokkaa. C ++, C # eivät tue konseptia, jos lopullinen avainsana. Java tukee lopullisen avainsanan käsitettä ja Java: ssa; luokka, muuttuja ja menetelmä voidaan julistaa lopulliseksi.

  1. Staattinen avainsana soveltuu sisäkkäiseen staattiseen luokkaan, muuttujiin, menetelmiin ja lohkoihin. Toisaalta lopullinen avainsana on sovellettavissa luokan menetelmiin ja muuttujiin.
  2. Staattinen muuttuja voidaan alustaa milloin tahansa, kun taas lopullinen muuttuja on alustettava ilmoittamishetkellä.
  3. Staattinen muuttuja voidaan alustaa uudelleen, kun taas alustettua lopullista muuttujaa ei voida enää alustaa.
  4. Staattinen menetelmä voi käyttää luokan staattista jäsentä, ja siihen voidaan vedota vain muilla staattisilla menetelmillä. Toisaalta, mikään luokka ei voi koskaan periä lopullista menetelmää.
  5. Staattista lohkoa käytetään alustamaan staattiset muuttujat, kun taas lopullinen avainsana ei tue mitään lohkoa.

johtopäätös:

Sekä staattinen että lopullinen avainsana ratkaisevat eri käyttötarkoituksen luokkaa, muuttujaa ja menetelmää käytettäessä.