Modifikatorer i Java

Modifikatorer i Java
En modifiserer i Java brukes til å definere tilgjengeligheten og atferden til klassene, deres konstruktører, felt og metoder. Det er to typer modifikatorer i Java, tilgang og ikke-tilgang. Tilgangsmodifikatorene definerer tilgjengeligheten, mens ikke-tilgangsmodifikatorene rapporterer atferdsinformasjonen til klasser, konstruktører og metoder til JVM. Denne artikkelen gir en detaljert guide om modifikatorer i Java med følgende læringsutbytte:
  • typer modifikatorer
  • Hvordan modifikatorer fungerer i Java

Typer modifikatorer

Denne delen vurderer modifiseringstypene i detalj, i tillegg er undertypene av hver type også beskrevet.

Tilgangsmodifiserere

Disse modifikatorene er ansvarlige for å definere tilgjengeligheten til klasser, konstruktører, metode osv. For dette er tilgangsmodifikatorene videre delt inn i flere undertyper.

Misligholde: Denne standardtilgangsmodifisereren tildeles når ingen annen modifiserer brukes. Medlemmene av en standardklasse er tilgjengelige i pakken der klassen er bosatt.

Offentlig: Dette er den mest brukte og vanlige tilgangsmodifisereren. Metodene eller datamedlemmene er erklært ved hjelp av offentlige nøkkelord og kan nås hvor som helst uten noen begrensning.

Merk: Hovedklassen kan opprettes ved hjelp av standard eller offentlige nøkkelord. Imidlertid kan metodene/konstruktørene/attributtene opprettes som private, beskyttede, standard og offentlige

Privat: Datamedlemmene i den private klassen er erklært ved hjelp av private nøkkelord og er bare tilgjengelige innen foreldreklassen. Dessuten kan noen annen metode fra noen annen klasse ikke få tilgang til medlemmene i den private klassen. Ettersom hovedklassen ikke kan deklareres ved hjelp av et privat søkeord, øver de nestede klassene eller metodene det private nøkkelordet.

Beskyttet: Medlemmer av en pakke med en beskyttet tilgangsmodifiserer er tilgjengelige innenfor samme pakke med samme underklasse.

Ikke-tilgangsmodifiserere

JVM bruker disse modifikatorene for å finne ut hvordan klasser oppfører seg. Følgende typer ikke-tilgangsmodifiserere kan brukes:

Endelig: De endelige modifikatorene for ikke-tilgang brukes med klassene for å begrense arven. Det endelige nøkkelordet brukes med klassene for å definere deres uberørte oppførsel, og JVM tillater da ingen underklasse å utvide en slik type klasse. Tilsvarende kan metodene og variablene også brukes med de endelige modifikatorene for ikke-tilgang for å begrense oppførselen.

Abstrakt: De abstrakte klassene er bare arvet ikke instantiert. Hovedformålet med de abstrakte klassene er å utvide dem til å benytte seg av disse klassene. Dessuten er de abstrakte metodene også som abstrakte klasser, de er erklært i en superklasse, men de blir instantiert i underklassen på tidspunktet for å utvide underklassen.

Merk: De endelige og abstrakte nøkkelordene kan brukes til å definere hovedklassen. Metodene og attributtene kan defineres ved hjelp av ikke-tilgangsmodifiserere som statiske, forbigående, synkroniserte.

  • Synkronisert: Synkroniseringskonseptet kommer i handling der flere programmer utføres for å minimere ressursforbruket. Den synkroniserte ikke-tilgangsmodifisereren hjelper til med å begrense en metode til tilgang med flere tråder. Denne ikke-tilgangsmodifisereren gjelder bare for metoder.
  • Statisk: Denne ikke-tilgangsmodifisereren gjelder for indre klasser, variabler, metoder. I de statiske klassene er variabler assosiert med klassen, og enhver endring til variabler fordeles til alle objektene. Dessuten kan de statiske metodene få tilgang til statiske variabler eller andre statiske metoder i samme klasse.
  • Innfødt: Det opprinnelige nøkkelordet brukes til å identifisere at metoden implementeres i Native Code ved bruk av Java Native Interface. Vanligvis blir metodene implementert i C/C ++ betraktet som de naturlige metodene.
  • Flyktig: Den forbigående ikke-tilgangsmodifisereren brukes med klassenavn og praktiseres for å sikre mottak av data over nettverket. Det forbigående nøkkelordet brukes med klassenavnene, og hvis klassen er forbigående, trenger datamedlemmene ikke forbigående. Du må bruke forbigående nøkkelord med datamedlemmet som ikke trenger serialisering.
  • Strictfp: Det står for strengt flytende punkt og begrenser flytende punktberegninger for å sikre at resultatet er det samme på tvers av forskjellige plattformer. Flytpunktsberegningene er plattformavhengige og returnerer forskjellige resultater på forskjellige plattformer.

Konklusjon

Modifikatorene i Java kan være av enten tilgangs- eller ikke-tilgangstype. Datamedlemmer og metoder for en klasse blir gjort tilgjengelige med tilgangsmodifiserere. Mens ikke-tilgangsmodifiserere varsler JVM om atferden til datamedlemmer/metoder i en klasse. Dette informative innlegget beskriver tilgangen og ikke-tilgangsmodifikatorene sammen med deres typer/undertyper i Java. Etter å ha gått gjennom dette innlegget, ville du ha lært å velge passende modifikatorer for klassemedlemmene dine i Java.