Ang panloob na klase sa java ay nangangahulugang isang klase na kasapi ng ibang klase. Sa , mayroong iba't ibang mga uri ng panloob na mga klase. Tutulungan ka ng artikulong ito na malutas ang lahat ng mga klase. Tatalakayin nang detalyado ang mga sumusunod na tagubilin,
- Pugad sa loob na klase
- Pamamaraan Lokal na mga panloob na klase
- Hindi nagpapakilalang mga panloob na klase
- Static na nakapugad na mga klase
Kaya't magsimula tayo sa artikulong Inner Class In Java na ito,
Inner Class Sa Java
Pugad sa Inner Class
Ang klase na ito ay may access sa anumang pribadong halaga ng halimbawa ng panlabas na klase. Ang pagsusulat ng isang klase sa loob ng isa pang klase ay pinapayagan din sa Java. Ang klase na nakasulat sa loob ay kilalang klase ng pugad at ang klase na nagtataglay ng panloob na klase ay kilala bilang panlabas na klase.
Syntax
klase sa labas ng lugar {class insideplace {}}
Halimbawa
Sa halimbawang ibinigay sa ibaba, Ginagawa naming pribado ang panloob na klase at ina-access ang klase sa tulong ng pamamaraan.
class Outer_place {int num private class Inner_place {public void print () {System.out.println ('Ito ay isang panloob na klase')}} void display_Inner () {Inner_place inside = new Inner_place () inner.print ()}} pampublikong klase My_class {public static void main (String args []) {Outer_place external = new Outer_place () external.display_Inner ()}}
Paglabas
Dito, Ang panlabas na lugar ay ang panlabas na klase at ang Panloob na lugar ay tinatawag na panloob na klase.
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Pag-access sa mga pribadong Miyembro
Ginagamit ang mga klase sa loob para sa pag-access din sa mga pribadong miyembro ng klase. Ipagpalagay na mayroong isang klase na mayroong mga pribadong miyembro upang ma-access ang mga ito. Sumulat ngayon ng isang panloob na klase sa loob ng klase at i-access ang mga pribadong miyembro mula sa isang pamamaraan sa loob ng panloob na klase.
Narito ang halimbawa,
class Outer_place {private int num = 162 class Inner_place {public int getNum () {System.out.println ('Ito ay isang getnum na pamamaraan ng panloob na klase:') ibalik ang numero}}} pampublikong klase na My_class {public static void main (String args []) {Outer_place panlabas = bagong Outer_place () Outer_place.Inner_place panloob = panlabas.new Inner_place () System.out.println (panloob.getNum ())}}
Paglabas
Magpatuloy,
Pamamaraan Ng Mga Lokal na Mga Klase sa Loob
Sa Java, Maaari kang magsulat ng isang klase sa loob ng pamamaraan at makikilala iyon bilang lokal na uri. Tulad ng lahat ng mga lokal na variable, ang saklaw ng panloob na klase ay pinaghihigpitan sa loob ng isang pamamaraan.
Halimbawa
Ipapakita ng sumusunod na halimbawa kung paano ipinatupad ang isang pamamaraang lokal na panloob na klase.
pampublikong klase Outerplace {void my_Method () {int num = 45 class MethodInner_place {public void print () {System.out.println ('paraan para sa mga panloob na klase' + num)}} MetodeInner_place panloob = bagong MethodInner_place () panloob.print ( )} pampublikong static void main (String args []) {Outerplace panlabas = bagong Outerplace () external.my_Method ()}}
Paglabas
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Anonymous Inner class
Anumang panloob na klase na idineklara nang walang classname ay tinatawag na hindi nagpapakilalang panloob na klase. Sa kaso ng mga hindi nagpapakilalang panloob na klase, pinag-uusapan namin ito at idineklara nang sabay.
Kailan man nais naming i-override ang pamamaraan ng klase o isang interface, ginagamit namin ang klase na ito.
Syntax
AnonymousInner obj1 = bagong AnonymousInner () {public void method () {}}
Halimbawa
abstract class 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 ('halimbawa ng hindi nagpapakilala panloob na klase ')}} panloob.mymethod ()}}
Paglabas
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Bilang Pangangatwiran Ng Anonymous Inner Class
Sa ito, Kung tatanggapin ng isang pamamaraan ang object ng interface, ng isang abstract na klase, o ang kongkretong klase, pagkatapos ay maipatupad namin ang interface, ipasa ang object sa pamamaraan at palawakin ang abstract class.
Syntax
obj pamamaraan (bagong klase () {public void do {}})
Halimbawa
// interface ng interface ng Mensahe {String pagbati ()} pampublikong klase My_class {// object ng interface ng mensahe ay tinanggap ng pamamaraang ito sa publiko na walang bisa displayMessage (Mensahe m) {System.out.println (m.greet () + ', halimbawa ng hindi nagpapakilalang panloob na klase bilang argument ')} public static void main (String args []) {// Instantiating of class My_class obj = new My_class () // Passing the anonymous inside class as argument obj.displayMessage (bagong Mensahe () {publiko String pagbati () {return 'Hey'}})}}
Paglabas
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Anonymous Inner Class Ng Isang Tinukoy na Subclass
Source Code
class Demo {void show () {System.out.println ('i was in show method of class')}} class Flavor1Demo {static Demo d = new Demo () {void show () {super.show () System. out.println ('naroroon ako sa klase ng Flavor1Demo')}} pampublikong static void main (String [] args) {d.show ()}}
Paglabas
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Anonymous Inner Class bilang isang Implementer ng Tinukoy Interface
Source Code
class Flavor2Demo {// class na nagpapatupad ng Hello interface static Hello h = bagong Hello () {public void show () {System.out.println ('I was present in anonymous class')}} public static void main (String [] args) {h.show ()}} interface Kamusta {void show ()}
Paglabas
Nagpapatuloy sa artikulong Inner Class In Java na ito,
Static na Pugad na Mga Klase
Ang mga klase ay hindi kilala sa teknikal bilang isang panloob na klase. Ang mga klase na ito ay katulad ng static na kasapi ng panlabas na klase. Ang isang static na pugad na klase ay walang anumang pag-access sa mga variable at pamamaraan ng panlabas na klase. Hindi namin kailangang i-instantiate ang panlabas na klase, Maaari itong ma-access nang direkta gamit ang mga static na miyembro.
Syntax
Mga pangunahing kaalaman sa sql server para sa mga nagsisimula
Panlabas na klase ng {Static class nested_example {}}
Halimbawa
pampublikong klase Outer {static class Nested_Example {public void my_method () {System.out.println ('Ito ang naka-punong klase')}} pampublikong static void main (String args []) {Outer.Nested_Example nested = bagong Outer.Nested_Example () pugad.my_method ()}}
Paglabas
Sa gayon ay natapos na tayo sa artikulong ito. Kung nais mong matuto nang higit pa,tingnan ang ni Edureka, isang pinagkakatiwalaang kumpanya sa pag-aaral sa online. Ang kurso sa pagsasanay at sertipikasyon ng Java J2EE at SOA ng Edureka ay idinisenyo upang sanayin ka para sa parehong core at advanced na mga konsepto ng Java kasama ang iba't ibang mga balangkas ng Java tulad ng Hibernate & Spring.
May tanong ba sa amin? Mangyaring banggitin ito sa seksyon ng mga komento ng artikulong ito at babalikan ka namin sa lalong madaling panahon.