Clasele Wrapper în Java: ce este, de ce avem nevoie de el?

Publicat: 2021-12-23

Java lucrează pe conceptele de OOP – Programare orientată pe obiecte. În ciuda acestui fapt, Java nu poate fi considerat un limbaj complet orientat pe obiecte. Asta pentru că Java funcționează cu opt tipuri de date primitive - byte, short, int, float, long și double. Aceste tipuri de date Java nu sunt obiecte, ceea ce face ca Java să nu fie în întregime orientat pe obiecte.

Cu toate acestea, clasele wrapper oferă o modalitate bună de a ocoli această limitare prin conversia tipurilor de date primitive în obiecte. În acest fel, clasele wrapper fac codul Java complet orientat pe obiecte.

Acesta este unul dintre conceptele mai importante de înțeles pentru toată lumea, începând cu limbajul de programare Java. Să te ajutăm cu asta prin acest articol. În primul rând, ne vom uita la clasele wrapper în Java și de ce avem nevoie de ele și avantajele lor. Până la sfârșitul articolului, vei fi în măsură să lucrezi cu clase de wrapper fără a fi confuz!

Aflați programe de dezvoltare software online de la cele mai bune universități din lume. Câștigă programe Executive PG, programe avansate de certificat sau programe de master pentru a-ți accelera cariera.

Cuprins

Clasa Wrapper în Java

Dezvoltatorii de software dau adesea peste situații care le-ar cere să nu lucreze cu tipuri de date primitive, ci cu obiecte. Pentru a realiza această conversie a tipului de date primitiv în obiecte, Java oferă programatorilor conceptul de clasă wrapper. Această clasă ajută la conversia de la primitiv la obiect, precum și de la obiect la tip de date primitiv.

Crearea unei clase wrapper creează automat un câmp nou în care sunt stocate tipurile de date primitive. Obiectul clasei wrapper deține apoi tipul de date primitiv. Acest proces de conversie a tipurilor de date primitive în obiecte folosind clase wrapper este cunoscut sub numele de boxing. În timp ce lucrați cu clase wrapper, trebuie să transmiteți valoarea tipului de date primitiv către constructorul clasei wrapper.

Cele șase clase wrapper – byte, short, int, float, long și double – sunt toate subclase ale clasei de numere, care este o clasă abstractă. Cele două clase de wrapper rămase – boolean și caractere – sunt subclase ale clasei de obiecte.

Iată un rezumat rapid al clasei wrapper pentru diferite tipuri de date primitive, împreună cu argumentul constructorului necesar pentru a crea clasa wrapper:

De ce sunt necesare clasele de wrapper în Java?

Clasele Wrapper în Java sunt benefice pentru situațiile în care programul necesită lucrul cu un obiect în loc de un tip de date primitiv. În acest sens, clasele wrapper ajută programul Java să fie 100% orientat pe obiecte. În afară de aceasta, clasele wrapper în Java sunt necesare din următoarele motive:

  • Pentru a lega valorile diferitelor tipuri de date primitive în obiecte. Acest lucru ajută la efectuarea de operațiuni complexe și lucrul cu colecții precum HashMap, ArrayList etc.
  • Pentru a oferi diferite funcții utilitare care pot fi utilizate cu tipuri de date primitive.
  • Deoarece tipurilor de date primitive nu li se poate da o valoare nulă, dar claselor wrapper pot, ele acționează și ca o soluție pentru alocarea unei valori nule oricărui tip de date primitive.

Care sunt avantajele utilizării claselor wrapper în Java?

Clasa Wrapper în Java oferă următoarele beneficii principale:

  • Ele ajută codul să fie serializabil. Acest lucru se datorează faptului că serializarea necesită conversia obiectelor în fluxuri. Dacă programatorii doresc să serializeze o valoare primitivă, aceasta trebuie mai întâi convertită în obiecte folosind clase wrapper.
  • Ele ajută la sincronizare, deoarece sincronizarea multithreading în Java necesită obiecte.
  • Datele primitive pot beneficia de diverse clase util ale pachetului Java.util.
  • Lucrul cu cadre de colecție devine posibilă folosind clasele wrapper.
  • Conversia tipurilor de date primitive în obiecte face posibilă modificarea valorii în interiorul funcției folosind o metodă apel-cu-valoare.
  • Clasele Wrapper în Java asigură că programul este polimorf.

Exemple

1. Convertirea unui tip primitiv în obiect

Exemplu de clasă publică{

public static void main(Argumente șir[]){

//Conversia primitivă float în obiect Float

plutitor n=10,10;

Float obj=Float.valueOf(n);

System.out.println(n+ ” “+ obj);

}

}

Ieșire:

10.10 10.10

După cum arată rezultatul, atât datele primitive, cât și obiectul au aceeași valoare. Așadar, puteți accesa aceeași valoare folosind obj sau n, orice preferi, în funcție de situație.

2. Transformarea obiectului în tipul primitiv

Exemplu de clasă publică{

public static void main(Argumente șir[]){

//Crearea obiectului Wrapper

Float o= new Float(50,00);

//Conversia obiectului în primitiv

float n= obj.floatValue();

System.out.println(n+ ” “+ o);

}

}

Ieșire:

50,00 50,00

Obiectul float a fost convertit înapoi la tipul de date primitiv float în exemplul de mai sus. De asemenea, puteți face o mulțime de conversii și manipulări folosind clase wrapper în Java. Există diferite funcții cu care lucrează clasele de wrapper. Această discuție depășește domeniul de aplicare al acestui articol, dar vă recomandăm să explorați în profunzime clasele de wrapper, împreună cu diferitele funcții cu care va trebui să lucrați atunci când gestionați clasele de wrapper.

În concluzie

La fel ca și cursurile de wrapper, există și multe alte concepte și idei esențiale pe care trebuie să le stăpânești pentru a excela în dezvoltarea de software. La upGrad, am îndrumat diverși studenți din întreaga lume și i-am ajutat să-și înceapă cariera în domeniul dorit. Sesiunile noastre de instruire personalizate și discuțiile de studiu de caz conduse de experți îi ajută pe studenți să rămână la curent cu toate conceptele dobândite.

Pentru a ajuta studenții să-și demareze cariera de dezvoltare software, vă prezentăm un program online de 5 luni creat de experți și lideri din industrie – Certificare PG legată de locuri de muncă în inginerie software . În afară de a vă învăța toate nuanțele domeniului, programul vă va ajuta și să vă plasați la companii de top. Așa că consultați acest curs și înregistrați-vă astăzi!

De ce sunt necesare clase de wrapper în Java?

Clasele Wrapper sunt fundamentale în Java, deoarece ajută un program Java să fie complet orientat pe obiecte. Tipurile de date primitive din Java nu sunt obiecte, în mod implicit. Ele trebuie convertite în obiecte utilizând clase de înveliș.

Câte clase de wrapper sunt disponibile în Java?

Numărul de clase wrapper în Java este același cu numărul de tipuri de date primitive acceptate de Java, adică 8.

Sunt clasele wrapper în Java modificabile?

Da, clasele de wrapper sunt modificabile.