Video: Exploring JavaScript and the Web Audio API by Sam Green and Hugh Zabriskie 2025
Da java-applikasjonene blir mer komplekse, blir behovet for å vurdere omfanget stadig viktigere. Hovedårsaken er at du kan utilsiktet introdusere en feil i søknaden din ved ikke å observere scopingregler.
Dette kan skyldes at et felt eller et annet medlem blir brukt feilaktig av programmet (for eksempel å legge til en feil dataverdi eller få tilgang til en metode ved feil tidspunkt eller med feil data). I tillegg kan feil scoping gi døren åpen for utenforstående å kommunisere med søknaden din på uforutsette måter (for eksempel et virus).
Standard omfanget oppstår når du ikke spesifikt tildeler et omfang til et klassement. Fordi mange Java-utviklere ikke har noen anelse om hva standardområdet er for enkelte elementer (og ved å bruke et standardområde betyr at koden din ikke er dokumentert) brukes ikke veldig ofte.
Likevel trenger du t o vet hva standard omfanget er for ulike elementer fordi noen Java-utviklere stoler på det. Men før du kan forstå standardområdet, må du vurdere synlighet - måleen for hvilke applikasjonselementer som kan se et medlem. Java gir følgende nivåer av synlighet (i generell rekkefølge for innkapsling):
-
Pakke: Beholderen brukes til å holde en rekke klasser. Når du arbeider med en enkel katalogstruktur, som eksemplene i denne boken gjør, er pakken en katalog som inneholder en rekke. klassefiler.
-
Klasse: En klasse ligger vanligvis i en enkelt. java-fil som du kompilerer til en. klassefil. Den inneholder en enkelt klassedeklarasjon.
-
Metode: Et element kan ligge i klassen eller som en del av en metode. Metoden fungerer som en beholder for å holde elementet.
-
Block: Et element kan ligge innenfor en kodeblokk, for eksempel en for loop.
Omfanget avhenger delvis av stedet som ble brukt til å deklarere et element. For eksempel er en variabel som er definert i en blokk (for eksempel en for loop) bare synlig innenfor den aktuelle blokk. Når du prøver å bruke variabelen utenfor blokken, viser Java et unntak. Når du tar hensyn til synligheten, beskriver denne tabellen de ulike omfangene i Java-miljøet.
Synlighet | privat | (standard) | beskyttet | offentlig |
---|---|---|---|---|
Tilgjengelig fra klassen | X | X | X | X |
Tilgjengelig fra pakken | X | X | X | |
Tilgjengelig fra hvilken som helst barneklasse | X | X | ||
Tilgjengelig hvor som helst | X |
Tabellen viser hvordan standardoppsettet passer inn i ordningen av ting. Hvis du for eksempel erklære en metode ved å bruke standardomfanget, kan en hvilken som helst metode bruke den så lenge den ligger i samme pakke.I tillegg, hvis du lager en klasse som arver fra klassen som inneholder metoden, kan underkategorien bruke metoden så lenge den ligger i samme pakke.
Men hvis underklassen eksisterer utenfor den nåværende pakken, kan den ikke bruke metoden. Kort sagt er standardomfanget litt mer restriktivt enn det beskyttede omfanget, men mindre restriktive enn det private omfanget.
