Java е популярен език за програмиране, който се използва за разработване на различни приложения. Едно предимство на Java е, че поддържа обектно ориентирано програмиране (OOP). С помощта на OOP програмата или софтуерът могат да бъдат моделирани с помощта на обекти. Класът се използва като план за създаване на обект. При програмирането е необходимо да се съхраняват данни. Запазените места за памет за съхраняване на данни са известни като променливи. Всяка променлива има специфичен тип данни. Има осем примитивни типа, предоставени от езика на Java. Те са къси, байт, int, float, double, char, boolean. Понякога се изисква да преобразувате примитивния тип в обект, а обектът обратно в примитивния тип. За тази конверсия се използват класовете за обвиване. Тази статия обсъжда разликата между клас обвивка и примитивен тип в Java. Най- ключова разлика между клас обвивка и примитивен тип в Java е това клас обвивка се използва за преобразуване на примитивен тип в обект и обект обратно в примитивен тип, докато примитивен тип е предварително определен тип данни, предоставен от езика за програмиране на Java.
1. Преглед и ключова разлика
2. Какво е клас Wrapper в Java
3. Какво е примитивен тип в Java
4. Прилики между клас Wrapper и примитивен тип в Java
5. Сравнение рамо до рамо - Клас на обвивка срещу примитивен тип в Java в таблична форма
6. Резюме
Клас Wrapper в Java се използва за преобразуване на примитивен тип данни в обект и обект в примитивен тип. Дори примитивните типове данни се използват за съхранение на първични типове данни, структури от данни като списъци с масиви и вектори съхраняват обекти. Поради това е необходимо да се използват класове за обвивка за преобразуването. Съответните класове на обвивка за примитивни типове char, byte, short и int са символи, байтове, кратки и цели. Съответните класове опаковки за long, float, double и boolean са Long, Float, Double и Boolean.
Фигура 01: Java програма, която преобразува класовете Wrapper в примитивни типове
Според горната програма, intobj е обект от клас обвивка от Integer. Floatobj е обект от клас Float обвивка. Doubleobj е обект от клас Double обвивка. Обектът Integer се преобразува в примитивен int, използвайки intValue (). По същия начин обектът Float се преобразува в примитивен поплавък, използвайки floatValue (). Обектът Double се преобразува в примитивен двоен с помощта на doubleValue (). Ако програмистът напише израза като int i = intobj; компилаторът вътрешно пише intobj.Value (). Процесът на автоматично преобразуване на обект от клас обвивка в съответния примитивен тип е известен като unboxing. Колекции като ArrayLists използват клас Wrapper, защото съхраняват обекти.
Примитивните типове данни са предварително дефинираните типове данни, предоставени от езика за програмиране на Java. Има осем примитивни типа. Те са байт, къси, int, дълги, float, double, boolean и char. Типът байтови данни се използва за съхранение на 8-битово подписано двойно цяло число. Краткият тип данни се използва за съхранение на 16-битово подписано двойно цяло число. Целият тип данни се използва за съхранение на 32-битово подписано двойно цяло число, докато дългият тип данни се използва за съхранение на 64-битови пеещи се цели комплементни числа. Поплавъкът се използва за съхраняване на единична прецизна 32-битова стойност на плаваща запетая, а двойният се използва за съхранение на 64-битова стойност на плаваща точка с двойна прецизност. Булев се използва за представяне на вярно или невярно. Значката се използва за съхранение на един символ. Това са осемте примитивни типа в Java.
Фигура 02: Java програма, която преобразува примитивните типове в класове Wrapper
Според горната програма num1 е тип int. Той се преобразува в цяло число, като предава num1 на Integer.valueOf (). Float1 може да съхранява float стойности. Преобразува се в тип Float, като прехвърля float1 в Float.valueOf (). По същия начин double1 може да съхранява двойни стойности. Той се преобразува в тип Double, като преминава double1 в Double.valueOf (). Ако програмистът напише изявлението като Interger intobj = num1; компилаторът вътрешно пише Integer.valueOf (num1); Процесът на преобразуване на примитивния тип в съответния обект от клас обвивка автоматично е известен като autoboxing.
Клас на обвивка срещу примитивен тип в Java | |
Класът Wrapper предоставя механизъм за преобразуване на примитивен тип в обект и обект в примитивен тип. | Примитивен тип е предварително определен тип данни, предоставен от Java. |
Асоцииран клас | |
Клас Wrapper се използва за създаване на обект; следователно, той има съответен клас. | Примитивният тип не е обект, така че не принадлежи към клас. |
Нулеви стойности | |
Обектите от клас обвивка позволяват нулеви стойности. | Примитивен тип данни не позволява нулеви стойности. |
Необходима памет | |
Необходимата памет е по-висока от примитивните типове. Индексът на клъстерите не изисква допълнително място. | Необходимата памет е по-ниска в сравнение с класовете за обвиване. |
Колекции | |
Клас Wrapper може да се използва с колекция като ArrayList и т.н.. | Примитивен тип не се използва с колекции. |
Язикът на Java предоставя осем примитивни типа данни. Понякога се изисква да преобразувате примитивните типове в обект, а също и да превърнете обектите обратно в примитиви. Класовете за опаковане могат да се използват за постигане на тази задача. Разликата между клас обвивка и примитивен тип в Java е, че клас обвивка се използва за преобразуване на примитивен тип в обект и обект обратно в примитивен тип, докато примитивен тип е предварително определен тип данни, предоставен от езика за програмиране на Java.
1. „Клас за опаковане в java - Javatpoint.“ , Java Point. Налични тук
2. Синг, Чайтаня. „Клас за увиване в Java.“ , 10 септември 2017. Достъпно тук
3. Точка, уроци. „Основни типове данни на Java.“ , Tutorials Point, 27 окт. 2017.Достъпни тук