Was sind primitive Typen in Java?
Was ist der Unterschied zwischen einem primitiven Typ und einem Referenztyp?
Wie viele primitive Typen hat Java und was sind sie?
In Java hat jede Variable einen im Quellcode deklarierten Typ. Es gibt zwei Arten von Typen: Referenztypen und Primitivtypen. Referenztypen sind Referenzen auf Objekte. Primitivtypen enthalten direkt Werte. Es gibt 8 Grundtypen:
Aus der Java-Sprachspezifikation , Kapitel 4. Typen, Werte und Variablen :
Die Java-Programmiersprache ist eine statisch typisierte Sprache, dh, jede Variable und jeder Ausdruck hat einen Typ, der zur Kompilierzeit bekannt ist.
Die Java-Programmiersprache ist auch eine stark typisierte Sprache, da Typen die Werte begrenzen, die eine Variable [...] enthalten kann oder die ein Ausdruck erzeugen kann, die für diese Werte unterstützten Operationen begrenzen und die Bedeutung der Operationen bestimmen. Starke statische Typisierung hilft, Fehler beim Kompilieren zu erkennen.
Die Typen der Java-Programmiersprache sind in zwei Kategorien unterteilt: Grundtypen und Referenztypen. Die Grundtypen [...] sind der boolesche Typ und die numerischen Typen. Die numerischen Typen sind die Integraltypen Byte, Short, Int, Long und Char sowie die Gleitkommatypen Float und Double. Die Referenztypen sind [...] Klassentypen, Schnittstellentypen und Arraytypen. Es gibt auch einen speziellen Nulltyp. Ein Objekt [...] ist eine dynamisch erstellte Instanz eines Klassentyps oder eines dynamisch erstellten Arrays. Die Werte eines Referenztyps sind Referenzen auf Objekte. Alle Objekte, einschließlich Arrays, unterstützen die Methoden der Klasse Object [...].
In der realen Welt gibt es beispielsweise verschiedene Fahrzeugtypen. Jeder dient einem bestimmten Zweck. Sie haben Sportwagen zum schnellen Fahren, Utensilien zum Tragen von Werkzeugen, LKWs zum Transportieren vieler Güter und Limousinen für Luxusreisen. Auf die gleiche Weise können Sie in Java verschiedene Datentypen haben, die verschiedenen Zwecken dienen, z. Wenn Sie Zahlen haben (die zum Addieren/Subtrahieren usw. verwendet werden), können Sie "Zeichenfolgen" verwenden, die zur Übermittlung von Wörtern und Buchstaben dienen. Sie können keine Buchstaben zum Hinzufügen verwenden - das macht einfach keinen Sinn und Sie können auch keine Zahlen verwenden, um einen Satz zu schreiben. Sie müssen den richtigen Datentyp verwenden, um das zu tun, was Sie möchten.
Nun gibt es einige "Datentypen", die grundlegend sind. Diese werden bereits von den Boffins bei Redmond/Sun erstellt. Diese werden als "primitive" Java-Typen bezeichnet und speichern die Werte in sich. Was bedeutet das? Es ist am besten durch ein Beispiel erklärt:
Beispiel eines primitiven Typs
Wenn ich Ihnen eine Note von 50 Dollar gegeben habe, ist die Note an und für sich 50 Dollar wert. Der Wert wird in der Notiz selbst gespeichert.
Primitives neben Referenztypen
Nun stellen Sie sich vor, dass ich Ihnen statt eines Betrags von 50 Dollar ein Stück Papier gebe, auf dem eine Adresse zu einem Safe in meiner Bank in der Schweiz steht. Das Stück Papier, das ich Ihnen gegeben habe, ist an und für sich nicht $ 50 wert, aber es zeigt auf eine Adresse, wo Sie Ihre $ 50 erhalten können. Dieses Blatt ist im Grunde ein "Referenztyp", da es keine Werte in und für sich speichert, sondern nur auf bestimmte Adressen zeigt. Aber ich kann Ihnen eine Adresse geben: Flugzeuge, Burgen, Regenwälder: alles!
Sie können nicht einfach jemandem ein Flugzeug oder einen Shinkansen-Zug aus Ihrer Hosentasche geben: Sie geben ihm einfach eine Adresse. Aber wenn Sie $ 50 oder eine andere Währung haben: Die eigentliche Substanz befindet sich in Ihrer Hosentasche. Sie werden ihnen keine $ 50-Note geben.
Das ist, kurz gesagt, der Unterschied zwischen primitiven und Referenztypen.
Ich hoffe, es hilft.
Primitive Typen in Java sind Nicht-Klassentypen. Sie speichern nur Werte.
double d = 3.0;
d.intValue(); //compiler error!
Double d2 = new Double(3.0);
d2.intValue(); //works!
Es gibt Referenztypen, Primitivtypen und void
Für jeden Primitivtyp (und void
) gibt es einen Wrapper-Typ, der eine Konstante mit dem Namen TYPE
definiert, die die Klasse des Primitivtyps hat.
Eine Compiler-Methode zum Abrufen einer Klasse für einen primitiven Typ besteht in der Verwendung der .class
-Notation. z.B.
Class<Integer> intClass = int.class; // == Integer.TYPE
Class<Void> voidClass = void.class; // == VOID.TYPE
Java unterstützt den Basisdatentyp int, double, float usw. insgesamt acht . Dies sind die primitiven Typdaten oder der Basistyp Ihrer Daten.
boolean, char, byte, short, int, long, double, float
Primitive Typen sind keine Klassen, sondern können zum Speichern von Werten wie Zahlen und Zeichen verwendet werden.
Es gibt zwei Arten von Datentypen: Primitive und Objektreferenz . Primitive Datentypen sind kein Objekt, sie speichern nur die tatsächlichen Werte, während Objektreferenzvariablen die Adresse des Objekts speichern, auf das sie verweisen.
Jeder in eine Programmiersprache integrierte Datentyp wird als primitiver Datentyp bezeichnet. Primitive oder eingebaute Wörter oder grundlegende Datentypen werden von Autoren austauschbar verwendet. Primitive Datentypen in Java werden von der Java-Programmiersprache als grundlegender Baustein bereitgestellt und dafür werden sie als primitive Typen für Java bezeichnet. Mit Java können Programmierer auch eigene Typen definieren (benutzerdefinierte Typen). Für primitive Typen verfügt Java über eine integrierte Unterstützung. Primitive Typen werden von der Java-Sprache vordefiniert und nach reservierten Schlüsselwörtern benannt. Java unterstützt 8 integrierte Datentypen. Ihr grundlegendes Verhalten und unterstützte Vorgänge können von Programmierern nicht geändert werden.
Sie sind keine Klassentypen, die nur einen Wert enthalten. Beim Übergeben einer primitiven Variablen übergeben Sie den Wert selbst anstelle der Referenz des Werts.
Die eigentliche Bedeutung von primitiv ist, ob Datentypen Klassen sind oder nicht. Java ist keine reine objektorientierte Sprache, da in Java Datentypen keine Primitivitätsmittel sind, dh Datentypen sind keine Klassen.
Eg:- int a; a=10;
/*Integer a=new Integer();
a=10;
*/not possible
in c # sind Datentypen Klassen und deshalb ist es reine objektorientierte Sprache
In Java gibt es zwei Arten von Typen,
Primitive Typen
Primitivtypen enthalten direkt Werte.
int i = 24;
Es gibt 8 primitive Typen,
Referenztypen
Referenztypen sind Referenzen auf Objekte. Wenn Sie ein neues Testobjekt in der Test.Java-Klasse erstellen, gibt es einen Referenztyp
Test t = new Test();
String ist ein Referenztyp ..__, kein primitiver Typ. Es gibt zwei Möglichkeiten, ein String-Objekt zu erstellen.
String s = "abc";
String y = new String("abc");
Es gibt zwei Unterteilungen in Datentypen, nämlich primitives
und reference
. Die Primitiven repräsentieren das Folgende
Unter den Zahlen haben wir
Diese stellen Zahlen dar und verfügen über unterschiedliche Speicherzuordnungen, um Speicherplatz zu sparen. Wir können ihn effizient verwenden. Zwischen int und long haben wir unterschrieben und unsigniert. Vorzeichenlos beginnt mit min = 0.
Die acht primitiven Datentypen, die von Java Programming Language unterstützt werden:
byte - Es ist eine 8-Bit-Zweierkomplement-Ganzzahl. Es hat einen Mindestwert von -128 und einen Maximalwert von 127.
short - Es ist eine 16-Bit-Zweierkomplement-Ganzzahl mit Vorzeichen. Es hat einen Mindestwert von -32.768 und einen Maximalwert von 32.767.
Für detaillierte Erklärung Hier klicken