Staatilise ja lõpliku erinevus Java-s

Autor: Laura McKinney
Loomise Kuupäev: 2 Aprill 2021
Värskenduse Kuupäev: 16 Mai 2024
Anonim
Staatilise ja lõpliku erinevus Java-s - Tehnoloogia
Staatilise ja lõpliku erinevus Java-s - Tehnoloogia

Sisu


Staatiline ja lõplik on mõlemad Java-s kasutatavad märksõnad. Staatiline liige pääseb juurde enne klassi objekti loomist. Lõplikul on erinev mõju klassile, meetoditele ja muutujatele rakendamisel. Peamine erinevus staatilise ja lõpliku märksõna vahel on see staatiline on märksõna kasutatakse klassi liikme määratlemiseks, mida saab kasutada klassi klassi objektidest sõltumatult. Finaal märksõna kasutatakse deklareerimiseks, konstantset muutujat, meetodit, mida ei saa tühistada, ja klassi, mida ei saa pärida.

  1. Võrdlusdiagramm
  2. Definitsioon
  3. Peamised erinevused
  4. Järeldus

Võrdlusdiagramm

Võrdluse alusStaatilineFinaal
KohaldatavStaatiline märksõna on rakendatav pesastatud staatilise klassi, muutujate, meetodite ja ploki korral.Lõplik märksõna on rakendatav klassidele, meetoditele ja muutujatele.
InitsialiseerimineStaatilise muutuja initsialiseerimine selle deklareerimise ajal pole kohustuslik.Lõpliku muutuja initsialiseerimine selle avaldamise ajal on kohustuslik.
ModifikatsioonStaatilise muutuja saab uuesti initsialiseerida.Lõplikku muutujat ei saa uuesti initsialiseerida.
MeetodidStaatilised meetodid pääsevad juurde ainult klassi staatilistele liikmetele ja neid saab kutsuda ainult muude staatiliste meetoditega.Lõplikke meetodeid ei saa pärida.
KlassStaatiliste klasside objekti ei saa luua ja see sisaldab ainult staatilisi liikmeid.Lõpuklassi ei saa ükski klass pärida.
BlokeeriStaatilist plokki kasutatakse staatiliste muutujate lähtestamiseks.Lõplik märksõna sellist blokki ei toeta.


Staatilise määratlus

Staatiline on märksõna, mida saab kasutada klasside, muutujate, meetodite ja plokkide jaoks. Klassiliikmeid, klassi ja plokke saab muuta staatilisteks, kasutades märksõna „staatiline” vastavalt klassi liikmete, klassi ja plokkide nime ees. Kui klassi liige kuulutatakse staatiliseks, muutub see kõigi teiste klassi liikmete jaoks globaalseks. Klassi staatiline liige ei hõivata mälu iga eksemplari alusel, st kõik objektid jagavad sama staatilise liikme eksemplari. Staatilist elementi saab kasutada selle klassi mis tahes objektist sõltumatult. Klassi staatilisele liikmele pääsete juurde enne selle objekti loomist. Parim näide staatilise liikme kohta on main () meetod, see kuulutatakse staatiliseks, nii et sellele saab tugineda enne, kui mõni objekt on olemas. Klassi staatilisele liikmele juurdepääsu üldvorm:

klassi_nimi.staatiline_liige // klassi staatiline liige

Ülalpool on kood_nimi selle klassi nimi, milles staatiline_liige on määratletud. Staatiline liige võib olla staatiline muutuja või staatiline meetod


Staatilised muutujad:

  • Staatiline muutuja toimib globaalse muutujana kõigi klassi teiste andmeliikmete jaoks.
  • Staatilistele muutujatele on juurdepääs enne klassi objektide olemasolu.
  • Staatilisele muutujale pääseb juurde selle klassi nimega, milles see on määratletud, millele järgneb punkti (.) Operaator.

Staatilised meetodid:

  • Staatiline meetod võib helistada ainult teistele staatilistele meetoditele.
  • Staatiline meetod pääseb juurde ainult staatilistele andmetele.
  • Staatilist meetodit ei saa mitte mingil juhul nimetada selleks või üliliseks.
  • Staatiline meetod on kättesaadav selle klassi nimega, milles see on määratletud, millele järgneb punkti (.) Operaator.

Staatiline klass:

  • Java'l on kontseptsioon pesastatud staatilisest klassist. Äärepoolsemat klassi ei saa muuta staatiliseks, sisemist klassi aga staatiliseks.
  • Staatiline pesaklass ei pääse välimise klassi mittestaatilisse liikmesse.
  • See pääseb juurde ainult välimise klassi staatilistele liikmetele.

Staatiline plokk:

Staatiline plokk teostatakse klassi laadimisel ainult üks kord. Kasutatakse klassi staatiliste muutujate lähtestamiseks.

C ++:

C ++ puhul on meil olemas nii staatiliste muutujate mõiste kui ka staatilised funktsioonid, samas kui C ++ ei toeta staatilist klassi.

C #:

C # toetab staatilist klassi, staatilisi muutujaid ja ka staatilist klassi.

Java:

Java toetab staatilist pesastatud klassi, staatilisi muutujaid, staatilisi meetodeid.

Finaali määratlus

Lõppsõna on klassis, muutujates ja meetodites rakendatav märksõna. Klass, muutuja ja meetod kuulutatakse lõplikuks, kasutades märksõna „lõplik”, millele eelneb nende nimi. Kui muutuja on lõplikuks kuulutatud; seda ei saa programmis enam muuta. Lõplik muutuja tuleb lähtestada ajadeklaratsioonis. Lõplikud muutujad ei hõivata üksikjuhu alusel mälu. Kõigil klasside objektidel on lõpliku muutuja sama eksemplar.

Lõplikuks kuulutatud meetodit ei saa tühistada selle klassi alaklassiga, milles lõplik meetod kuulutatakse. Kui klass kuulutatakse lõplikuks, ei saa teine ​​klass seda lõpuklassi pärida. C ++, C # ei toeta kontseptsiooni lõppsõna korral. Java toetab lõpliku märksõna mõistet ja Java keeles; klassi, muutuja ja meetodi saab kuulutada lõplikuks.

  1. Staatiline märksõna on rakendatav pesastatud staatilise klassi, muutujate, meetodite ja plokkide jaoks. Teisest küljest on lõplik märksõna rakendatav klassimeetodite ja muutujate jaoks.
  2. Staatilise muutuja saab lähtestada igal ajal, samas kui lõpliku muutuja tuleb lähtestada deklareerimise ajal.
  3. Staatilist muutujat saab uuesti initsialiseerida, pärast lõpliku muutuja initsialiseerimist ei saa seda kunagi uuesti initsialiseerida.
  4. Staatiline meetod pääseb juurde klassi staatilisele liikmele ja sellele saab tugineda ainult muude staatiliste meetoditega. Teisest küljest ei saa lõplik meetod kunagi ühtegi klassi pärida.
  5. Staatilist plokki kasutatakse staatiliste muutujate lähtestamiseks, samas kui lõplik märksõna ei toeta ühtegi plokki.

Järeldus:

Nii staatiline kui ka lõplik märksõna lahendavad klassi, muutuja ja meetodi korral erinevat eesmärki.