Clase imbricate în Java

Cuprins
Există momente în care aplicația noastră capătă dimensiuni mai mari, atât în ​​ceea ce privește dimensiunea, cât și complexitatea, mai ales dacă lucrăm într-un orientat spre eveniment, de aceea, în loc să construim clase separat, putem face clase imbricate.
clase imbricate Acestea ne permit să definim o clasă în cadrul altei, în acest fel putem accesa informațiile clasei care o conține, cu aceasta putem satisface cerințele într-un mod mai simplu prin faptul că nu trebuie să construim structuri independente.
Clase imbricateA clasa imbricata este o clasă definită în sfera sau sfera altei clase, adică este în clasa care o va conține, aceasta înseamnă că, în loc să trebuiască să instanțeze în cadrul clasei interioare un obiect al clasei exterioare pentru a-și folosi atributele și metode o putem face direct de atunci este la îndemâna ta.
Trebuie să fim atenți să nu confundăm acest lucru cu clase separate în cadrul aceluiași fișier, deoarece este un concept total diferit, în acest caz vorbim despre o clasă în cadrul altei și nu că împărtășesc fișierul, să vedem diferența dintre ambele definiții.

În imagine vedem în partea superioară modul în care clasele din același fișier sunt una peste alta, dar în partea inferioară vedem cum clasa imbricată se încadrează în definiția altei clase, această diferență pare evidentă, totuși este bine să faceți clarificări pentru a evita problemele viitoare.
1- A clasa imbricata este compilat în clasa care îl conține, acesta generează un fișier .clasă cu o combinație de nume de stil ClassExternal $ ClassNested.class, dacă urmăm exemplul din imagine numele ar fi Testați $ Nested.class.
2- A clasa imbricata Puteți utiliza și face referire la atributele și metodele clasei care o conține fără a fi nevoie să creați o nouă instanță, datorită acestui fapt putem simplifica puțin conținutul programului nostru, mai ales atunci când lucrați cu orientarea evenimentului, să vedem în următoarea imagine cum este exprimat acest lucru:

3- clasa imbricata poate fi afectat de modificatorii de vizibilitate și își asumă caracteristicile, în plus poate fi declarat și ca statictotuși, dacă o facem pe aceasta din urmă, vom putea accesa doar metodele static a clasei care îl conține.
4- În ciuda faptului că sunt clase imbricate, acestea pot fi instanțe de alte clase decât clasele care le conțin, pentru aceasta puteți utiliza următorul formular:
ExternalClass.NestedClassNestedClassObject = ExternalClassObject.newNested Class ();

În cazul în care clasa noastră imbricată este de tip static trebuie să folosim apoi următoarea formă:
Clasa externă. NestedClass nestedClassObject = new OuterClass.NestedClass ();

Cu aceasta terminăm acest tutorial, am văzut cum putem genera clase imbricate și sintaxa asociată cu această caracteristică a limbajului, utilitatea acestui mod de lucru este că putem combina clase dependente într-o singură clasă mare, cu aceasta reducem numărul de fișiere și, de asemenea, codul sursă, cu aceasta avem o mai mare controlul aplicației noastre și facilităm viața echipei noastre de dezvoltare, având tot ceea ce este legat în aceeași clasă.
wave wave wave wave wave