Forskellen mellem indpakningsklasse og primitiv type i Java

Nøgleforskel - Indpakning klasse vs primitiv type i Java
 

Java er et populært programmeringssprog, der bruges til at udvikle forskellige applikationer. En fordel ved Java er, at det understøtter Object Oriented Programming (OOP). Ved hjælp af OOP kan programmet eller softwaren modelleres ved hjælp af objekter. En klasse bruges som en plan for at oprette et objekt. Ved programmering er det nødvendigt at gemme data. Reserverede hukommelsesplaceringer til lagring af data er kendt som variabler. Hver variabel har en bestemt datatype. Der er otte primitive typer, der leveres af Java-sproget. De er korte, byte, int, float, dobbelt, char, boolean. Undertiden kræves det at konvertere den primitive type til et objekt og objektet tilbage til den primitive type. Omslagsklasserne bruges til denne konvertering. Denne artikel diskuterer forskellen mellem indpakningsklasse og primitiv type i Java. Det vigtigste forskel mellem indpakningsklasse og primitiv type i Java er det indpakningsklasse bruges til at konvertere en primitiv type til et objekt og objekt tilbage til primitiv type, mens en primitiv type er en foruddefineret datatype leveret af Java-programmeringssprog.

INDHOLD

1. Oversigt og nøgleforskel
2. Hvad er indpakningsklasse i Java
3. Hvad er primitiv type i Java
4. Ligheder mellem indpakningsklasse og primitiv type i Java
5. Sammenligning side ved side - Indpakningsklasse vs primitiv type i Java i tabelform
6. Resume

Hvad er indpakningsklasse i Java?

En indpakningsklasse i Java bruges til at konvertere en primitiv datatype til et objekt og objekt til en primitiv type. Selv de primitive datatyper bruges til lagring af primære datatyper, datastrukturer såsom Array-lister og Vectors-lagerobjekter. Derfor er det påkrævet at bruge indpakningsklasser til konverteringen. De tilsvarende indpakningsklasser for primitive typer char, byte, short og int er tegn, byte, kort og heltal. De tilsvarende indpakningsklasser for lang, flydende, dobbelt og boolsk er Long, Float, Double og Boolean.

Figur 01: Java-program, der konverterer indpakningsklasser til primitive typer

I henhold til ovenstående program er intobj et Integer wrapper class-objekt. Floatobj er et Float wrapper-klasseobjekt. Doubleobj er et objekt med dobbelt indpakning. Integer-objektet konverteres til et primitivt int ved hjælp af intValue (). Tilsvarende konverteres Float-objektet til en primitiv float ved hjælp af floatValue (). Dobbeltobjektet konverteres til primitivt dobbelt ved hjælp af doubleValue (). Hvis programmereren skriver udsagnet som int i = intobj; kompilatoren skriver internt intobj.Value (). Processen med automatisk konvertering af et objekt fra en indpakningsklasse til dens tilsvarende primitive type kaldes unboxing. Samlinger som ArrayLists bruger Wrapper-klassen, fordi de gemmer objekter.

Hvad er primitiv type i Java?

De primitive datatyper er de foruddefinerede datatyper leveret af Java-programmeringssprog. Der er otte primitive typer. De er byte, korte, int, lange, flyder, dobbelt, boolske og char. Bytedatatypen bruges til at gemme et 8-bit signeret to's komplement heltal. Den korte datatype bruges til at gemme 16-bit signeret to's komplement heltal. En int-datatype bruges til at gemme 32-bit underskrevet to's komplement-heltal, mens lang datatype bruges til at gemme 64-bit singed two's komplement-heltal. Float bruges til at lagre 32-bit flydepunktværdi med en enkelt præcision, og dobbeltværdien bruges til at lagre 64-bit flydepunktværdi med dobbelt præcision. Boolean bruges til at repræsentere sandt eller usant. Chargen bruges til at gemme et enkelt tegn. Det er de otte primitive typer i Java.

Figur 02: Java-program, der konverterer de primitive typer til indpakningsklasser

I henhold til ovenstående program er num1 en int-type. Det konverteres til et heltal ved at overføre num1 til Integer.valueOf (). Float1 kan gemme floatværdier. Det konverteres til Float-type ved at sende float1 til Float.valueOf (). Tilsvarende kan double1 gemme dobbeltværdier. Det konverteres til dobbelt type ved at overføre double1 til Double.valueOf (). Hvis programmereren skriver udsagnet som Interger intobj = num1; kompilatoren skriver internt Integer.valueOf (num1); Processen med automatisk konvertering af den primitive type til det tilsvarende objekt indpakningsklasse kaldes autoboxing.

Hvad er ligheden mellem indpakningsklasse og primitiv type i Java?

  • Både Wrapper-klasse og Primitive Type i Java kan bruges til at gemme data under programmering.

Hvad er forskellen mellem indpakningsklasse og primitiv type i Java?

Indpakningsklasse vs primitiv type i Java

Indpakningsklasse tilvejebringer en mekanisme til at konvertere primitiv type til objekt og objekt til primitiv type. En primitiv type er en foruddefineret datatype leveret af Java.
 Associated Class
En indpakningsklasse bruges til at oprette et objekt; derfor har den en tilsvarende klasse. En primitiv type er ikke et objekt, så den ikke hører til en klasse.
Nulle værdier
Indpakningsklasseobjekter tillader nulværdier. En primitiv datatype tillader ikke nulværdier.
 Hukommelse påkrævet 
Den krævede hukommelse er højere end de primitive typer. Clustered Index kræver ikke en ekstra plads. Den krævede hukommelse er lavere sammenlignet med indpakningsklasser.
Samlinger
En indpakningsklasse kan bruges med en samling som ArrayList osv. En primitiv type bruges ikke med samlinger.

Resumé - wrapper klasse vs primitiv type i Java

Java-sprog giver otte primitive datatyper. Undertiden kræves det at konvertere de primitive typer til objekt og også at konvertere objekterne tilbage til primitiver. Indpakningsklasser kan bruges til at opnå denne opgave. Forskellen mellem indpakningsklasse og primitiv type i Java er, at indpakningsklasse bruges til at konvertere en primitiv type til et objekt og objekt tilbage til en primitiv type, mens en primitiv type er en foruddefineret datatype leveret af Java-programmeringssprog.

Reference:

1. "Indpakningsklasse i java - Javatpoint." , Java Point. Tilgængelig her
2.Singh, Chaitanya. “Indpakningsklasse i Java.” , 10. september 2017. Findes her
3.Point, selvstudier. “Java Basic Datatypes.” , Tutorials Point, 27. oktober 2017. Tilgængelig her