Sisäinen luokka java tarkoittaa yhtä luokkaa, joka on toisen luokan jäsen. Sisään , sisäisiä luokkia on erityyppisiä. Tämä artikkeli auttaa sinua selvittämään kaikki nämä luokat. Seuraavista ohjeista keskustellaan yksityiskohtaisesti,
- Sisäkkäin sisempi luokka
- Menetelmä Paikalliset sisäluokat
- Nimetön sisäiset luokat
- Staattiset sisäkkäiset luokat
Joten aloitetaan tämän Java-sisäisen luokan artikkelin kanssa,
Sisäinen luokka Java
Sisäkkäin sisempi luokka
Tällä luokalla on pääsy mihin tahansa ulomman luokan yksityiseen ilmentymän arvoon. Yhden luokan kirjoittaminen toiseen luokkaan on sallittua myös Java-kielellä. Sisään kirjoitettu luokka tunnetaan sisäkkäin luokkana ja luokka, jolla on sisempi luokka, tunnetaan ulkoisena.
Syntaksi
luokan ulkopinta {luokan sisätila {}}
Esimerkki
Alla olevassa esimerkissä teemme sisäluokasta yksityisen ja pääsemme luokkaan menetelmän avulla.
class Outer_place {int num private class Inner_place {public void print () {System.out.println ('It is an internal class')}} void display_Inner () {Inner_place inner = new Inner_place () internal.print ()}} public class My_class {public static void main (String args []) {Outer_place external = new Outer_place () external.display_Inner ()}}
Tuotos
Täällä ulompi paikka on ulompi luokka ja sisäistä paikkaa kutsutaan sisäiseksi luokaksi.
Tämän sisäisen luokan Java-artikkelissa siirtyminen
Yksityisten jäsenten käyttö
Sisäisiä luokkia käytetään myös luokan yksityisten jäsenten käyttöön. Oletetaan, että luokassa on yksityisiä jäseniä pääsemään heihin. Kirjoita nyt luokan sisäinen luokka ja käytä yksityisiä jäseniä sisäisen luokan menetelmällä.
Tässä on esimerkki,
class Outer_place {private int num = 162 class Inner_place {public int getNum () {System.out.println ('Se on sisäisen luokan getnum-menetelmä:') return number}}} public class My_class {public static void main (String args []) {Outer_place external = uusi Outer_place () Outer_place.Inner_place internal = external.new Inner_place () System.out.println (internal.getNum ())}}
Tuotos
Siirtyminen eteenpäin
Paikallisten sisäisten luokkien menetelmä
miten ohittaa viittaus java
Java-kielessä voit kirjoittaa luokan menetelmän sisään ja se tunnetaan nimellä paikallinen tyyppi. Kuten kaikki paikalliset muuttujat, sisäisen luokan laajuus on rajoitettu menetelmän sisällä.
Esimerkki
Seuraava esimerkki osoittaa, kuinka menetelmä paikallinen sisäinen luokka toteutetaan.
public class Outerplace {void my_Method () {int num = 45 class MethodInner_place {public void print () {System.out.println ('menetelmä sisäisille luokille' + numero)}} MethodInner_place internal = uusi MethodInner_place () inner.print ( )} public staattinen void main (String args []) {Outerplace external = uusi Outerplace () external.my_Method ()}}
Tuotos
Tämän sisäisen luokan Java-artikkelissa siirtyminen
Nimetön sisäinen luokka
Sisäistä luokkaa, joka ilmoitetaan ilman luokkanimeä, kutsutaan nimettömäksi sisäiseksi luokaksi. Anonyymien sisäisten luokkien tapauksessa me välitämme ja julistamme sen samanaikaisesti.
Aina kun haluamme ohittaa luokan menetelmän tai käyttöliittymän, käytämme tätä luokkaa.
Syntaksi
AnonymousInner obj1 = uusi AnonymousInner () {public void -menetelmä () {}}
Esimerkki
abstrakti luokka AnonymousInner {public abstract void mymethod ()} public class Outer_class {public static void main (String args []) {AnonymousInner inner = new AnonymousInner () {public void mymethod () {System.out.println ('esimerkki nimettömästä) sisempi luokka ')}} sisempi menetelmä ()}}
Tuotos
Tämän sisäisen luokan Java-artikkelissa siirtyminen
löytää suurin joukko java-taulukkoa
Anonyymin sisäisen luokan väitteenä
Tässä, jos menetelmä hyväksyy käyttöliittymän objektin, abstraktin luokan tai konkreettisen luokan, voimme pystyä toteuttamaan rajapinnan, siirtämään objektin menetelmälle ja laajentamaan abstraktin luokan.
Syntaksi
obj. method (uusi luokka () {public void do {}})
Esimerkki
// käyttöliittymän käyttöliittymä Viesti {String greet ()} public class My_class {// käyttöliittymäviestin objekti hyväksytään tällä menetelmällä public void displayMessage (Message m) {System.out.println (m.greet () + ', esimerkki anonyymi sisäinen luokka argumenttina ')} public static void main (String args []) {// Luokan Instantiation My_class obj = new My_class () // Anonyymin sisäisen luokan välittäminen argumenttina obj.displayMessage (new Message () {public Merkkijono-tervehdys () {return 'Hei'}}}}}
Tuotos
Tämän sisäisen luokan Java-artikkelissa siirtyminen
Anonyymi määritetyn alaluokan sisempi luokka
Lähdekoodi
luokan esittely {void show () {System.out.println ('olin luokan näyttötavassa')}} luokka Flavor1Demo {staattinen demo d = uusi demo () {void show () {super.show () -järjestelmä. out.println ('olin läsnä Flavor1Demo-luokassa')}} public static void main (String [] argumentit) {d.show ()}}
Tuotos
Tämän sisäisen luokan Java-artikkelissa siirtyminen
Nimetön sisäinen luokka määriteltyjen toteuttajina Käyttöliittymä
Lähdekoodi
luokka Flavor2Demo {// luokka, joka toteuttaa Hello-käyttöliittymän staattisen Hei h = new Hello () {public void show () {System.out.println ('olin läsnä nimettömässä luokassa')}} public staattinen void main (String [] args) {h.show ()}} käyttöliittymä Hei {void show ()}
Tuotos
Tämän sisäisen luokan Java-artikkelissa siirtyminen
Staattiset sisäkkäiset luokat
Näitä luokkia ei teknisesti tunneta sisäisiksi luokiksi. Nämä luokat ovat samanlaisia kuin ulomman luokan staattinen jäsen. Staattisella sisäkkäisellä luokalla ei ole pääsyä ulomman luokan muuttujiin ja menetelmiin. Meidän ei tarvitse välittää ulkoista luokkaa, vaan siihen pääsee suoraan staattisten jäsenten avulla.
Syntaksi
Luokan ulompi {staattinen luokka sisäkkäinen_esimerkki {}}
Esimerkki
public class Outer {staattinen luokka Sisäkkäinen_esimerkki {public void my_method () {System.out.println ('Se on sisäkkäinen luokka')}} public static void main (Merkkijonon argumentit []) {Outer.Nested_Example sisäkkäin = uusi Outer.Nested_Example () sisäkkäin.my_method ()}}
Tuotos
Siksi olemme päässeet tämän artikkelin loppuun. Jos haluat oppia lisää,tutustu Edureka, luotettava verkko-oppimisyritys. Edurekan Java J2EE- ja SOA-koulutus- ja sertifiointikurssit on suunniteltu kouluttamaan sekä ydin- että edistyneitä Java-konsepteja sekä erilaisia Java-kehyksiä, kuten Hibernate & Spring.
Onko sinulla kysymys meille? Mainitse se tämän artikkelin kommenttiosassa ja otamme sinuun yhteyttä mahdollisimman pian.