Różnica Między Klasą Opakowania A Typem Pierwotnym W Javie

Spisu treści:

Różnica Między Klasą Opakowania A Typem Pierwotnym W Javie
Różnica Między Klasą Opakowania A Typem Pierwotnym W Javie

Wideo: Różnica Między Klasą Opakowania A Typem Pierwotnym W Javie

Wideo: Różnica Między Klasą Opakowania A Typem Pierwotnym W Javie
Wideo: TYPY GENERYCZNE W JAVA - PRAKTYCZNY PRZEWODNIK 2024, Listopad
Anonim

Kluczowa różnica - klasa opakowująca a typ prymitywny w Javie

Java to popularny język programowania używany do tworzenia różnych aplikacji. Jedną z zalet języka Java jest to, że obsługuje programowanie obiektowe (OOP). Za pomocą OOP program lub oprogramowanie można modelować za pomocą obiektów. Klasa służy jako plan tworzenia obiektu. Podczas programowania konieczne jest przechowywanie danych. Zarezerwowane miejsca w pamięci do przechowywania danych są znane jako zmienne. Każda zmienna ma określony typ danych. Język Java udostępnia osiem typów pierwotnych. Są one short, byte, int, float, double, char, boolean. Czasami wymagane jest przekonwertowanie typu pierwotnego na obiekt, a obiekt z powrotem na typ pierwotny. Do tej konwersji używane są klasy opakowania. W tym artykule omówiono różnicę między klasą opakowania a typem pierwotnym w języku Java. Kluczowa różnica między klasą opakowującą a typem pierwotnym w języku Java polega na tym, że klasa opakowująca służy do konwersji typu pierwotnego na obiekt i obiektu 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 kluczowe różnice

2. Czym jest klasa opakowująca w Javie

3. Czym jest typ pierwotny w Javie

4. Podobieństwa między klasą opakowującą a typem pierwotnym w Javie

5. Porównanie bezpośrednie - klasa opakowująca a typ pierwotny w Javie w formie tabelarycznej

6. Podsumowanie

Co to jest klasa Wrapper w Javie?

Klasa Wrapper w języku Java służy do konwersji pierwotnego typu danych na obiekt i obiektu na typ pierwotny. Nawet prymitywne typy danych są używane do przechowywania podstawowych typów danych, struktury danych, takie jak listy tablic i wektory, przechowują obiekty. Dlatego do konwersji wymagane jest użycie klas opakowania. Odpowiednie klasy opakowania dla typów pierwotnych char, byte, short i int to Character, Byte, Short i Integer. Odpowiednie klasy opakowania dla long, float, double i boolean to Long, Float, Double i Boolean.

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

Rysunek 01: Program w języku Java, który konwertuje klasy opakowania na typy pierwotne

Zgodnie z powyższym programem, intobj jest obiektem klasy wrapper typu Integer. Floatobj jest opakowującym obiektem klasy Float. Doubleobj jest obiektem klasy Double wrapper. Obiekt Integer jest konwertowany na pierwotną liczbę int przy użyciu funkcji intValue (). Podobnie obiekt Float jest konwertowany na pierwotny obiekt typu float przy użyciu metody floatValue (). Obiekt Double jest konwertowany na pierwotny double przy użyciu metody doubleValue (). Jeśli programista zapisze instrukcję jako int i = intobj; kompilator wewnętrznie zapisuje intobj. Value (). Proces automatycznej konwersji obiektu klasy opakowania na odpowiadający mu typ pierwotny jest nazywany rozpakowywaniem. Kolekcje, takie jak ArrayLists, używają klasy Wrapper, ponieważ przechowują obiekty.

Co to jest typ prymitywny w Javie?

Prymitywne typy danych to predefiniowane typy danych dostarczane przez język programowania Java. Istnieje osiem typów prymitywnych. Są to bajty, krótkie, int, długie, zmiennoprzecinkowe, podwójne, logiczne i char. Typ danych bajtowych jest używany do przechowywania 8-bitowej liczby całkowitej dopełniającej do dwóch ze znakiem. Krótki typ danych jest używany do przechowywania 16-bitowej liczby całkowitej dopełniającej do dwóch ze znakiem. Typ danych int jest używany do przechowywania 32-bitowej liczby całkowitej dopełniającej do dwóch ze znakiem, podczas gdy typ danych long jest używany do przechowywania 64-bitowej liczby całkowitej uzupełnionej do dwóch ze znakiem pojedynczym. Liczba zmiennoprzecinkowa jest używana do przechowywania 32-bitowej wartości zmiennoprzecinkowej pojedynczej precyzji, a podwójna służy do przechowywania 64-bitowej wartości zmiennoprzecinkowej podwójnej precyzji. Wartość logiczna jest używana do reprezentowania prawdy lub fałszu. Znak służy do przechowywania pojedynczego znaku. To jest osiem typów pierwotnych w Javie.

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

Rysunek 02: Program w języku Java, który konwertuje typy pierwotne na klasy opakowania

Zgodnie z powyższym programem num1 jest typem int. Jest konwertowany na liczbę całkowitą, przekazując num1 do Integer.valueOf (). Float1 może przechowywać wartości zmiennoprzecinkowe. Jest konwertowany na typ Float przez przekazanie float1 do Float.valueOf (). Podobnie double1 może przechowywać wartości double. Jest konwertowany na typ Double, przekazując double1 do Double.valueOf (). Jeśli programista zapisze instrukcję jako Interger intobj = num1; kompilator wewnętrznie zapisuje Integer.valueOf (num1); Proces automatycznej konwersji typu pierwotnego na odpowiedni obiekt klasy opakowania jest nazywany autoboxingiem.

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

Zarówno klasa Wrapper, jak i typ prymitywny w Javie mogą być używane do przechowywania danych w programowaniu

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

Porównaj środek artykułu przed tabelą

Klasa opakowania a typ pierwotny w Javie

Klasa Wrapper udostępnia mechanizm konwersji typu pierwotnego na typ obiektowy i obiektu na typ pierwotny. Typ pierwotny to predefiniowany typ danych udostępniany przez Javę.
Powiązana klasa
Do tworzenia obiektu używana jest 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 większa niż w przypadku typów pierwotnych. Indeks klastrowy nie wymaga dodatkowego miejsca. Wymagana pamięć jest mniejsza w porównaniu do klas opakowujących.
Kolekcje
Klasa Wrapper może być używana z kolekcją, taką jak ArrayList itp. W kolekcjach nie jest używany typ pierwotny.

Podsumowanie - Klasa opakowująca a typ prymitywny w Javie

Język Java udostępnia osiem prymitywnych typów danych. Czasami wymagana jest konwersja typów pierwotnych na obiektowe, a także przekształcenie obiektów z powrotem w prymitywy. Do wykonania tego zadania można użyć klas opakowujących. Różnica między klasą opakowującą a typem pierwotnym w Javie polega na tym, że klasa opakowująca służy do konwersji typu pierwotnego na obiekt i obiektu z powrotem na typ pierwotny, podczas gdy typ pierwotny jest predefiniowanym typem danych udostępnianym przez język programowania Java.

Zalecane: