


Detaillierter Vergleich von Basistypvariablen und Referenztypvariablen in Java
Grundtyp:
Der Grundtyp ist selbstverständlich eine Zahl, ein Zeichen oder ein boolescher Wert.
Referenztyp:
ist ein Objekttyp, was ist der Wert? Sein Wert ist ein Verweis auf den Speicherplatz, der die Adresse ist. Der Speicher, auf den verwiesen wird, enthält einen Wert oder eine Reihe von Werten, die durch die Variable dargestellt werden.
Beispiel:
int a;
a=250; //Bei der Deklaration der Variablen a weist das System Platz zu.
Der Referenztyp wird der Variablen nicht zugewiesen, der Datenraum wird nicht zugewiesen, weil niemand weiß, was die Daten sind, Ganzzahl, Zeichen? Schauen wir uns ein Fehlerbeispiel an:
MyDate today;today.day = 4; //Ein Fehler ist aufgetreten, weil der Datenraum des Today-Objekts nicht zugewiesen ist.
Wie weisen wir ihm dann einen Wert zu? Nach der Deklaration muss eine Referenztypvariable durch Instanziierung Datenraum öffnen, bevor auf das Objekt zugegriffen werden kann, auf das die Variable zeigt. Zum Beispiel:
MyDate today; //Ordnen Sie die Variable einem Leerzeichen zu, um die Referenz zu speichern
today = new MyDate(); //Dieser Satz besteht zunächst aus zwei Schritten Führe new MyDate( ) aus, öffne Datenraum für die heutige Variable und führe dann die Zuweisungsoperation aus
//Referenzvariable zuweisen
MyDate a, b; //Öffne zwei Referenzräume im Speicher
a = new MyDate(); //Öffnen Sie den Datenraum des MyDate-Objekts und weisen Sie die erste Adresse des Raums a zu.
b = a; Der Speicherplatz
ist wie unten gezeigt
Referenztyp:
Außer Wenn eine Funktion einen Wert übergibt, erfolgt die Übergabe per Referenz. Jedes Mal, wenn „=" verwendet wird, um einer Objektvariablen einen Wert zuzuweisen, erfolgt die Übergabe per Referenz.
Wertübertragung:Die Übertragung von Basistypen ist eine Wertübertragung, genau wie die C-Sprache, wenn Javas grundlegende Datentypen (z. B int, char, double usw.) werden als Eingabeparameter an den Funktionskörper übergeben, die übergebenen Parameter werden zu lokalen Variablen innerhalb des Funktionskörpers. Diese lokale Variable ist eine Kopie der Eingabeparameter Die internen Operationen des Zahlenkörpers sind alle Operationen an dieser Kopie. Nach Abschluss der Funktionsausführung hat diese lokale Variable ihre Aufgabe erfüllt und hat keinen Einfluss auf die als Eingabeparameter verwendeten Variablen. Die Parameterübergabe auf diese Weise wird als „Wert“ bezeichnet Pass".
Verwandte Artikel:/*define a class*/class MyDate{ String Year; String Month; String Day; String Date; public MyDate(){ Year = "1900"; Month ="01"; Day = "01"; Date = Year + "." + Month + "."+ Day; } public String toString(){ return Date; } }public class ObjRef{ MyDate mydate1 = new MyDate(); MyDate mydate2 = mydate1;// = 使 mydate1和 mydate2将指向同一内存空间 //MyDate mydate2 = new MyDate();//从新new一个对象,则mydate1和mydate2是指向不同的内存空间的: //引用空/间和数据空间都不一样 public void changeObj(MyDate inObj){ inObj.Date = "2007.09.26"; } public static void main(String[] args) { ObjRef oRef = new ObjRef(); System.out.println("Before call changeObj() method: " + oRef.mydate1); oRef.changeObj(oRef.mydate1); System.out.println("After call changeObj() method: " + oRef.mydate1); System.out.println("After call changeObj() method: " + oRef.mydate2);//验证“= mydate1和 mydate2将指向同一内存空间“这一结论 } }Eine detaillierte Einführung in die vier Referenztypen in JavaAnalyse von Referenztypen im Java-KonzeptDetaillierte Erläuterung des Unterschieds zwischen JavaScript-Basisdatentypen und Referenztypen
Das obige ist der detaillierte Inhalt vonDetaillierter Vergleich von Basistypvariablen und Referenztypvariablen in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel werden Maven und Gradle für Java -Projektmanagement, Aufbau von Automatisierung und Abhängigkeitslösung erörtert, die ihre Ansätze und Optimierungsstrategien vergleichen.

In dem Artikel werden benutzerdefinierte Java -Bibliotheken (JAR -Dateien) mit ordnungsgemäßem Versioning- und Abhängigkeitsmanagement erstellt und verwendet, wobei Tools wie Maven und Gradle verwendet werden.

In dem Artikel wird in der Implementierung von mehrstufigem Caching in Java mithilfe von Koffein- und Guava-Cache zur Verbesserung der Anwendungsleistung erläutert. Es deckt die Einrichtungs-, Integrations- und Leistungsvorteile sowie die Bestrafung des Konfigurations- und Räumungsrichtlinienmanagements ab

In dem Artikel werden mit JPA für Objektrelationszuordnungen mit erweiterten Funktionen wie Caching und faulen Laden erläutert. Es deckt Setup, Entity -Mapping und Best Practices zur Optimierung der Leistung ab und hebt potenzielle Fallstricke hervor. [159 Charaktere]

Mit der Klassenbelastung von Java wird das Laden, Verknüpfen und Initialisieren von Klassen mithilfe eines hierarchischen Systems mit Bootstrap-, Erweiterungs- und Anwendungsklassenloadern umfasst. Das übergeordnete Delegationsmodell stellt sicher


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung