Różnica między klasą opakowania a typem pierwotnym w Javie

Kluczowa różnica - opakowanie Klasa vs Typ pierwotny w Javie
 

Java jest popularnym językiem programowania służącym do opracowywania różnych aplikacji. Jedną z zalet Java jest to, że obsługuje programowanie obiektowe (OOP). Za pomocą OOP program lub oprogramowanie można modelować za pomocą obiektów. Klasa jest używana jako plan do utworzenia obiektu. Podczas programowania konieczne jest przechowywanie danych. Zarezerwowane lokalizacje pamięci do przechowywania danych nazywane są zmiennymi. Każda zmienna ma określony typ danych. Istnieje osiem pierwotnych typów dostarczanych przez język Java. Są krótkie, bajtowe, int, float, double, char, boolean. Czasami wymagana jest konwersja typu pierwotnego na obiekt, a obiekt z powrotem na typ pierwotny. Do tej konwersji używane są klasy opakowań. W tym artykule omówiono różnicę między klasą opakowania a typem pierwotnym w Javie. The kluczowa różnica między klasą opakowania a typem pierwotnym w Javie jest to klasa opakowania służy do konwersji typu pierwotnego na obiekt i obiekt z powrotem na typ pierwotny, podczas gdy typ pierwotny jest predefiniowanym typem danych udostępnianym przez język programowania Java.

ZAWARTOŚĆ

1. Przegląd i kluczowa różnica
2. Co to jest klasa opakowania w Javie
3. Co to jest typ pierwotny w Javie
4. Podobieństwa między klasą opakowania a typem pierwotnym w Javie
5. Porównanie obok siebie - Klasa opakowania vs. Typ pierwotny w Javie w formie tabelarycznej
6. Podsumowanie

Co to jest Wrapper Class w Javie?

Klasa Wrapper w Javie służy do konwersji pierwotnego typu danych na obiekt i obiekt na typ pierwotny. Nawet pierwotne typy danych są używane do przechowywania podstawowych typów danych, struktur danych, takich jak listy macierzy i obiekty magazynów wektorów. Dlatego do konwersji wymagane jest użycie klas opakowań. Odpowiednimi klasami opakowań dla typów pierwotnych char, byte, short i int są Character, Byte, Short i Integer. Odpowiednie klasy opakowań dla długich, zmiennoprzecinkowych, podwójnych i logicznych to Długie, Pływające, Podwójne i Logiczne.

Rysunek 01: Program Java konwertujący klasy opakowań na typy pierwotne

Zgodnie z powyższym programem, intobj jest obiektem klasy opakowującej typu Integer. Floatobj jest obiektem klasy opakowującej typu Float. Doubleobj jest obiektem klasy podwójnego opakowania. Obiekt Integer jest konwertowany na pierwotny int za pomocą intValue (). Podobnie obiekt Float jest konwertowany na pierwotny element pływający za pomocą floatValue (). Obiekt Double jest konwertowany na pierwotne double za pomocą doubleValue (). Jeśli programista zapisze instrukcję jako int i = intobj; kompilator wewnętrznie zapisuje intobj.Value (). Proces automatycznego konwertowania obiektu klasy opakowania na odpowiadający mu typ pierwotny jest znany jako rozpakowywanie. Kolekcje takie jak ArrayLists używają klasy Wrapper, ponieważ przechowują obiekty.

Co to jest Primitive Type w Javie?

Prymitywne typy danych to predefiniowane typy danych dostarczane przez język programowania Java. Istnieje osiem pierwotnych typów. Są to bajty, krótkie, całkowite, długie, zmiennoprzecinkowe, podwójne, logiczne i char. Bajtowy typ danych służy do przechowywania liczby całkowitej ze znakiem 8-bitowej liczby uzupełnionej dwóch. Krótki typ danych służy do przechowywania 16-bitowej liczby całkowitej ze znakiem uzupełnienia do dwóch. Typ danych int służy do przechowywania 32-bitowej liczby całkowitej ze znakiem dopełniacza do dwóch, a długi typ danych służy do przechowywania 64-bitowej liczby całkowitej z dopełnieniem do dwóch uzupełnionych. Liczba zmiennoprzecinkowa służy do przechowywania 32-bitowej wartości zmiennoprzecinkowej o pojedynczej precyzji, a wartość podwójna służy do przechowywania 64-bitowej wartości zmiennoprzecinkowej o podwójnej precyzji. Wartość logiczna służy do reprezentowania wartości prawda lub fałsz. Znak służy do przechowywania pojedynczego znaku. To osiem pierwotnych typów w Javie.

Rysunek 02: Program Java konwertujący typy pierwotne na klasy opakowań

Zgodnie z powyższym programem, num1 jest typem int. Jest konwertowany na liczbę całkowitą, przekazując num1 do Integer.valueOf (). Pływak1 może przechowywać wartości pływaka. Przekształca się go w typ Float, przekazując float1 do Float.valueOf (). Podobnie double1 może przechowywać podwójne wartości. Przekształca się go w typ Double, przekazując double1 do Double.valueOf (). Jeśli programista napisze instrukcję jako Interger intobj = num1; kompilator wewnętrznie zapisuje Integer.valueOf (num1); Proces konwersji typu pierwotnego na odpowiedni obiekt klasy opakowania jest znany jako autoboxing.

Jakie jest podobieństwo między klasą opakowania a typem pierwotnym w Javie?

  • Zarówno klasa Wrapper, jak i Primitive Type w Javie mogą być używane do przechowywania danych w programowaniu.

Jaka jest różnica między klasą opakowania a typem pierwotnym w Javie?

Klasa opakowania a typ pierwotny w Javie

Klasa Wrapper zapewnia mechanizm konwersji typu pierwotnego na obiekt i obiekt na typ pierwotny. Typ pierwotny to predefiniowany typ danych dostarczany przez Javę.
 Skojarzona klasa
Do utworzenia obiektu służy klasa Wrapper; dlatego ma odpowiednią klasę. Typ pierwotny nie jest obiektem, więc nie należy do klasy.
Wartości zerowe
Obiekty klasy opakowania dopuszczają wartości null. Prymitywny typ danych nie zezwala na wartości null.
 Wymagana pamięć 
Wymagana pamięć jest wyższa niż typy pierwotne. Indeks klastrowy nie wymaga dodatkowej przestrzeni. Wymagana pamięć jest niższa w porównaniu do klas opakowań.
Kolekcje
Klasy Wrapper można używać z kolekcją, taką jak ArrayList itp. Typ podstawowy nie jest używany z kolekcjami.

streszczenie - Obwoluta Klasa vs Typ pierwotny w Javie

Język Java zapewnia osiem pierwotnych typów danych. Czasami wymagana jest konwersja typów pierwotnych na obiekty, a także konwersja obiektów z powrotem na pierwotne. Do osiągnięcia tego celu można wykorzystać klasy opakowań. Różnica między klasą opakowania a typem pierwotnym w Javie polega na tym, że klasa opakowania służy do konwersji typu pierwotnego na obiekt i obiekt z powrotem na typ pierwotny, podczas gdy typ pierwotny jest predefiniowanym typem danych dostarczanym przez język programowania Java.

Odniesienie:

1. „Klasa opakowania w Javie - Javatpoint”. , Java Point. Dostępny tutaj
2.Singh, Chaitanya. „Klasa opakowania w Javie”. , 10 września 2017 r. Dostępne tutaj
3.Punkt, samouczki. „Podstawowe typy danych Java”. , Tutorials Point, 27 października 2017 r. Dostępne tutaj