Null in Java

Null in Java
Null bedeutet nichts und Leere bedeutet leer. Void ist ein Typ, während Null eher ein Wert als ein Typ in seiner Verwendung ist. In Java wird Null nicht mit Null austauscht. In diesem Artikel wird erläutert, wie Null in Java verwendet wird.

Fallempfindlichkeit

Null ist fallempfindlich. Es ist null und nicht null oder null oder null usw.

Klassen- und instanziiertes Objekt

Eine Klasse ist eine Reihe von Variablen und Methoden, die zusammenarbeiten. Diese Variablen werden als Felder (Eigenschaften) bezeichnet. Wenn diese Felder Werte erhalten, wird die resultierende Einheit als Objekt bezeichnet. Ein Objekt aus einer Klasse zu haben, wird das Objekt instanziieren. Null kann einem Objekt zugewiesen werden, aber Null kann nicht zugewiesen werden. Das folgende Java-Programm kompiliert in einen Byte-Code und wird ohne Fehlermeldung ausgeführt:

Klasse cla
int rep;
int mtthd ()
Return Prop;


Klasse Theclass
public static void main (String [] args)
Cla obj1 = neuer cla ();
Cla obj2 = null;

TheClass ist die Klasse für die Main () -Methode. Die Klasse von Interesse hier ist Cla. Beachten Sie, dass OBJ2 in der Main () -Methode Null und nicht Null genommen hat.

Cla obj2 = 0;

In der main () -Methode hätte eine Fehlermeldung geführt.

Null und Null Nuance mit primitiven Typen

Java verfügt über primitive Datentypen im normalen Gebrauch und verfügt über primitive Datenklassen (Wrapper) -Typen. Zum Beispiel ist der folgende Code in Java legitim:

int i = 5;
Ganzzahl i = 5;
Doppel d = 6.6;
Doppel d = 6.6;

Ich ist die normale Erklärung eines primitiven Ganzzahltyps, während ich die Erklärung eines Objekts der Ganzzahlklasse bin. D ist die normale Deklaration eines primitiven Doppeltyps, während D die Erklärung eines Objekts der Doppelklasse ist.

Hier ist die Nuance: Ich nehme 0, während ich Null für den gleichen Zweck nehme; D nimmt 0, während D null für den gleichen Zweck nimmt. Das folgende Java-Programm kompiliert in einen Byte-Code und wird ohne Fehlermeldung ausgeführt:

Klasse Theclass
public static void main (String [] args)
int i = 0;
Ganzzahl i = null;
Doppel d = 0.0;
Doppelt d = null;

Der folgende Code würde vom Compiler zu zwei Fehlermeldungen führen:

int i = null;
Ganzzahl i = 0;
doppelt d = null;
Doppel d = 0.0;

Ich und D können 0 oder Null als Wert nehmen, wie sie sollten. I und D können Null jedoch nicht als Wert annehmen, was die wirkliche Nuance und die Ursache der beiden Fehlermeldungen ist.

Der Instanz des Operators

Der Instanzoperator gibt true zurück, wenn das Objekt die Instanz (instanziiertes Objekt) einer bestimmten Klasse ist. Die Syntax ist:

Objektinstanz der Klasse

Die Ausgabe des folgenden Programms ist wahr:

Klasse cla
int rep;
int mtthd ()
Return Prop;


Klasse Theclass
public static void main (String [] args)
Cla obj = neuer cla ();
boolean BL = OBJ Instance von Cla;
System.aus.println (bl);

Wenn Null wie folgt zugewiesen wurde:

Cla obj = null;

Die Ausgabe wäre falsch gewesen.

Null ist in Java nicht null

Das folgende Programm wird nicht kompiliert, da Null vom Typ int ist, während Null vom Typ ist:

Klasse Theclass
public static void main (String [] args)
if (0 == null)
System.aus.println ("Null kann null sein.");

Null kann in Java nicht null sein.

Arten von Typen und Werten

In Java gibt es zwei Arten von Typen: den primitiven Typ und den Referenztyp. Primitive Typen sind boolean, int, doppelt und ihre Varianten. Diese haben ihre Werte. Es gibt vier Arten von Referenztypen: Klassentypen, Schnittstellentypen, Typvariablen und Array -Typen. Auch diese haben ihre Werte. Null ist ein Typ, dessen einziger Wert Null ist. Das folgende Programm zeigt, wie ein primitiver Int -Typ und ein primitiver Int -Wert deklariert werden können:

Klasse Theclass
public static void main (String [] args)
int i = 5;
System.aus.println (i);

Der Ausgang ist 5. Der Null -Typ kann nicht ähnlich deklariert werden. Null wird normalerweise als Wert und nicht in der Typdeklaration verwendet. Das ist,

null i = null;

Ist nicht möglich.

Hinweis: Der Name eines instanziierten Objekts ist eine Referenz.

Primitive Klassen und Null

Ganzzahl, beginnend mit Großbuchstaben I, ist die primitive Klasse des INT -Typs. Das Doppelte, beginnend mit Großbuchstaben D, ist die primitive Klasse des Doppeltyps. Booleschen, beginnend mit Großbuchstaben B, ist die primitive Klasse des Booleschen Typs. Diese Klassentypen würden Null oder Null erfordern, während ihre äquivalenten primitiven Typen nur Null dauern würden. Das folgende Programm zeigt dies:

Klasse Theclass
public static void main (String [] args)
Ganzzahl a = 0;
Ganzzahl B = NULL;
int c = 0;
Doppel d = 0.0;
Doppelt e = null;
doppelt f = 0;
Boolean g = falsch;
Boolean H = null;
boolean i = false;

Das Programm kompiliert ohne Probleme. HINWEIS: Weder Boolean noch Boolean nehmen 0 für false.

Null, gedruckt als Null

So wie wahr und falsch in Worten gedruckt werden, wird Null auch als Wort in Java gedruckt. Das folgende Programm zeigt dies:

Klasse Theclass
public static void main (String [] args)
Boolean a = falsch;
Boolean b = wahr;
Boolean c = null;
System.aus.println (a);
System.aus.println (b);
System.aus.println (c);

Die Ausgabe ist:

FALSCH
WAHR
Null

Null als Array -Wert

Null kann als Wert in einem Array verwendet werden, wenn die Werte von einem Klassentyp sind. Das folgende Programm zeigt dies:

Klasse Theclass
public static void main (String [] args)
String [] str = "eins", null, "zwei", null, "drei";
System.aus.println (str [0]+"+str [1]+"+str [2]+"+str [3]+"+str [4]);

Die Ausgabe ist:

ein null zwei null drei

Beachten Sie, dass Null als Element nicht in Zitaten ist. Hier ist String eine Klasse. Es wird standardmäßig importiert. Es muss nicht manuell importiert werden.

Das ganze Array ist ein Objekt. Null kann also einem Array -Namen zugewiesen werden. Das folgende Programm zeigt dies:

Klasse Theclass
public static void main (String [] args)
String [] str = null;
System.aus.println (str);

Die Ausgabe ist: null.

Abschluss

Wenn Sie sich mit primitiven Typen befassen, geben Sie der Variablen, wenn Sie müssen. Wenn Sie sich mit Klassentypen befassen, können Sie je nach Kontext null oder null zuweisen. Weder boolean noch boolean nehmen 0 für false. In Java sind Zero und Null nicht austauschbar.