Java gir en funksjon som lar oss lage en klasse i en annen klasse kjent som Nested Class eller indre klasse, og klassen som holder den indre klassen blir referert til som en ytre klasse. Den indre klassen kan spesifiseres på samme måte som vi spesifiserer enhver annen klasseattributt eller metode.
I Java kan vi ikke erklære/lage en klasse med en tilgangsmodifiserer privat slik at klassen kan nås av en hvilken som helst annen klasse fra innsiden eller utenfor pakken. For å gi sikkerhet, må vi imidlertid lage private klasser, og for å gjøre det, kan vi lage indre klasser med privat tilgangsmodifiserere.
Denne oppskrivningen vil gi en omfattende guide for indre klasser i Java, og i denne forbindelse må vi forstå følgende konsepter:
La oss komme i gang!
Det som er indre klasse i Java
En klasse som er erklært/opprettet i en annen klasse er kjent som en indre klasse. Det kan få tilgang til alle klasseattributtene og medlemsfunksjonene til den ytre klassen. De primære funksjonene i indre klasser inkluderer forbedret sikkerhet, kodelesbarhet og vedlikeholdbarhet.
Syntaks
Den grunnleggende syntaksen til den indre klassen er beskrevet i det undergitte utdraget:
klasse OuterclassHvordan lage og få tilgang til indre klasse i Java
Oppretting av indre klasse er veldig enkel, alt vi trenger å gjøre er å lage en klasse i en klasse. For å få tilgang til den indre klassen, må vi først lage et forekomst/objekt i den ytre klassen, og etterpå kan vi lage gjenstanden for den indre/nestede klassen.
Eksempel
Ovennevnte utdrag viser hvordan en indre klasse fungerer i Java.
Hvordan få tilgang til attributter/metoder for ytre klasse
Den indre klassen kan få tilgang til klasseattributtene eller medlemsfunksjonene i den ytre klassen, følgende eksempel vil gi en bedre forståelse:
Eksempel
Den undergitte kodebit får tilgang til Navn1 Attributt til den ytre klassen fra den indre klassen:
klasse ytreDen komplette koden og utdataene vises i det undergitte utdraget:
Utgangen autentiserer at den indre klassen får tilgang til klasseattributtet til den ytre klassen.
Privat indre klasse i Java
I Java kan det ikke opprettes en vanlig klasse med privat Access Modifier Imidlertid kan det opprettes en indre klasse med privat tilgang, og gjenstandene utenfor klassen har ikke tilgang til den private indre klassen.
Eksempel
Hvis noen prøver å få tilgang til den private indre klassen, vil Java kaste en feil:
klasse ytreHele koden er den samme bortsett fra den indre klassetilgangsmodifisereren:
Ovennevnte utdrag verifiserer at en ytre klasse ikke er i stand til å få tilgang til den indre klassen.
Statisk indre klasse i Java
En indre klasse kan også opprettes med den statiske tilgangsmodifisereren, og fordelen med statisk indre klasse er at det ikke er behov for å lage objektet for ytre klasse for oppretting av objekt av Statisk indre klasse.
Forekomsten/objektet til den statiske klassen kan opprettes ved hjelp av følgende syntaks:
Outerclass.Innersclass OBJ = Ny ytreklasse.Indreclass ();Eksempel
klasse ytreDen komplette koden og respektive utgang vil gå slik:
EN statisk Indre klasse er ikke i stand til å få tilgang til klasseattributtene eller metodene i den ytre klassen:
Ovennevnte kodebit bekrefter at statisk indre klasse ikke har tilgang til medlemmet av ytre klasse.
Konklusjon
I Java kan det opprettes en klasse i en annen klasse referert til som indre klasse og for å lage en indre klasse først må vi lage en forekomst/objekt i den ytre klassen, og deretter kan vi lage gjenstanden for den indre klassen. EN Privat indre klasse Kan også opprettes i Java, og det kan ikke nås fra den ytre klassen. Dessuten i en Statisk indre klasse, det er ikke nødvendig å lage gjenstand for ytre Klasse for å få tilgang til den indre statiske klassen, og den har ikke tilgang til klassemedlemmene i den ytre klassen.