Java on populaarne programmeerimiskeel, mida kasutatakse mitmesuguste rakenduste arendamiseks. Java üks eelis on see, et see toetab objektorienteeritud programmeerimist (OOP). OOP-i abil saab programmi või tarkvara objektide abil modelleerida. Klassi kasutatakse objekti loomiseks plaanina. Programmeerimisel on vaja andmeid säilitada. Andmete salvestamiseks reserveeritud mälukohti nimetatakse muutujateks. Igal muutujal on konkreetne andmetüüp. Java keelt pakub kaheksa primitiivset tüüpi. Need on lühikesed, bait, int, float, double, char, boolean. Mõnikord on vaja primitiivne tüüp teisendada objektiks ja objekt tagasi primitiivseks tüübiks. Selle muundamise jaoks kasutatakse ümbrise klasse. Selles artiklis käsitletakse ümbrisklassi ja Java primitiivtüübi erinevust. võtme erinevus ümbrisklassi ja Java primitiivtüübi vahel on see mähkimisklassi kasutatakse primitiivse tüübi teisendamiseks objektiks ja objekt tagasi primitiivseks tüübiks, samas kui primitiivne tüüp on Java-programmeerimiskeele poolt etteantud andmetüüp.
1. Ülevaade ja peamised erinevused
2. Mis on Java kääritusklass?
3. Mis on Java primitiivne tüüp?
4. Wrapper-klassi ja Java primitiivtüübi sarnasused
5. Võrdlus kõrvuti - mähkimisklass vs primitiivtüüp Java-s tabelina
6. Kokkuvõte
Wrapperi klassi Java kasutatakse primitiivse andmetüübi teisendamiseks objektiks ja objekti primitiivseks tüübiks. Isegi primaarseid andmetüüpe kasutatakse esmaste andmetüüpide salvestamiseks, sellised andmestruktuurid nagu massiivi nimekirjad ja vektorid talletavad objekte. Seetõttu tuleb konverteerimiseks kasutada ümbrise klasse. Algsetele tüüpidele char, byte, short ja int vastavad ümbrisklassid on Character, Byte, Short ja Integer. Pikale, ujuk-, topelt- ja loogilisele vastavad ümbrisklassid on pikk, ujuk, topelt ja tõeväärtus.
Joonis 01: Java programm, mis teisendab pakendiklassid primitiivseteks tüüpideks
Ülaltoodud programmi kohaselt on intobj Integer wrapper klassi objekt. Floatobj on ujukmähise klassi objekt. Doubleobj on Double wrapper klassi objekt. Objekt täisarv teisendatakse intValue () abil primitiivseks int. Sarnaselt teisendatakse ujukobjekt primatiivseks ujukiks, kasutades seadet floatValue (). Topeltobjekt teisendatakse primitiivseks kahekordseks, kasutades doubleValue (). Kui programmeerija kirjutab avalduse int i = intobj; kompilaator kirjutab sisemiselt intobj.Value (). Ümbrisklassi objekti automaatseks teisendamiseks selle vastavaks primitiivseks tüübiks nimetatakse lahtipakkimist. Sellised kollektsioonid nagu ArrayLists kasutavad Wrapperi klassi, kuna nad salvestavad objekte.
Primitiivsed andmetüübid on Java programmeerimiskeele pakutavad etteantud andmetüübid. Primitiivseid tüüpe on kaheksa. Need on byte, lühikesed, int, pikad, float, double, boolean ja char. Baitide andmetüüpi kasutatakse 8-bitise allkirjastatud kahekomplemendi täisarvu salvestamiseks. Lühiandmetüüpi kasutatakse 16-bitiste allkirjastatud kahekomplementide täisarvu salvestamiseks. Int-andmetüüpi kasutatakse 32-bitise allkirjastatud kahekomplemendi täisarvu salvestamiseks, pika andmetüübi korral kasutatakse 64-bitise liigendatud kahe komplemendi täisarvu salvestamiseks. Ujukit kasutatakse ühe täpsusega 32-bitise ujukoma väärtuse salvestamiseks ja kahekordset kasutatakse 64-bitise täpsusega kahekordse täpsusega ujukoma väärtuse salvestamiseks. Tõeväärtust kasutatakse tõese või vale tähistamiseks. Sümbolit kasutatakse ühe märgi salvestamiseks. Need on Java kaheksa ürgset tüüpi.
Joonis 02: Java-programm, mis teisendab primitiivsed tüübid pakkeklassideks
Ülaltoodud programmi kohaselt on num1 int tüüpi. See teisendatakse täisarvuks, edastades num1 väärtusele Integer.valueOf (). Ujuk1 saab salvestada ujuki väärtusi. See teisendatakse ujukitüübiks, lastes float1 väärtuseks Float.valueOf (). Samamoodi saab double1 salvestada topeltväärtusi. See teisendatakse topelttüübiks, edastades double1 väärtuseks Double.valueOf (). Kui programmeerija kirjutab avalduse Interger intobj = num1; koostaja kirjutab sisemiselt Integer.valueOf (num1); Primatiivse tüübi automaatseks konverteerimisklassi objektiks teisendamise protsessi tuntakse kui automaatkast.
Wrapper Class vs Primitive Type Java-s | |
Wrapperi klass pakub mehhanismi primitiivse tüübi muutmiseks objektiks ja objekt primitiivseks tüübiks. | Primitiivne tüüp on Java poolt etteantud andmetüüp. |
Seotud klass | |
Objekti loomiseks kasutatakse Wrapperi klassi; seetõttu on sellel vastav klass. | Primitiivne tüüp ei ole objekt, seega ei kuulu see klassi. |
Nullväärtused | |
Pakendiklassi objektid lubavad nullväärtusi. | Primitiivne andmetüüp ei luba nullväärtusi. |
Vajalik mälu | |
Vajalik mälu on kõrgem kui primitiivsetel tüüpidel. Klastritud register ei vaja lisaruumi. | Vajalik mälu on väiksem kui ümbrisklassidega. |
Kogud | |
Wrapperi klassi saab kasutada selliste kollektsioonidega nagu ArrayList jne. | Primitiivset tüüpi kollektsioonides ei kasutata. |
Java keel pakub kaheksa primitiivset andmetüüpi. Mõnikord nõutakse primitiivsete tüüpide teisendamist objektiks ja ka objektide teisendamist primitiivideks. Selle ülesande saavutamiseks võib kasutada mähkimisklasse. Pakendiklassi ja Java primitiivtüübi erinevus seisneb selles, et ümbrisklassi kasutatakse primitiivse tüübi teisendamiseks objektiks ja objekt tagasi primitiivseks tüübiks, samas kui primitiivne tüüp on Java-programmeerimiskeele poolt etteantud andmetüüp.
1. “Pakendiklass javas - Javatpoint.” , Java punkt. Saadaval siin
2.Singh, Chaitanya. “Pakendiklass Java-s.” , 10. september 2017. Saadaval siin
3.Punkt, juhendid. “Java põhiandmetüübid”. , Juhendamispunkt, 27. oktoober 2017.Kättesaadav siit