Fakta om null i Java

Fakta om null i Java

Hvert programmeringssprog, inklusive Java, er afgrænset med null. Der er ingen programmør, der ikke stod over for noget problem i koden relateret til null. Programmører hovedsageligt ansigt NullPointerException når de forsøger at udføre nogle operationer med null-data. NullPointerException er en tilgængelig klasse, der hører til java.lang-pakken.

Før du forstår fakta om null, er det nødvendigt at have kendskab til Java-variabler. Hvis du ikke ved hvad Java variabel er, gå gennem følgende link:

Hver eneste udvikler bør have viden om følgende fakta om null i Java:

Forskellighed mellem store og små bogstaver

I Java kan vi ikke skrive null som NULL eller 0 som i C-programmering, fordi null er et bogstav, og nøgleord er store og små bogstaver i Java.

Lad os tage et eksempel for at forstå nulls opførsel, der skelner mellem store og små bogstaver.

NullExample1.java

 // import classes and packages if any public class NullExample1 { // main() method start public static void main (String[] args) throws java.lang.Exception { // declare and initialize an object with NULL Object obj1 = NULL; // declare and initialize an object with null Object obj2 = null; // print both objects System.out.println('The value of obj1 is: '+obj1); System.out.println('The value of obj2 is: '+obj2); } }  

Produktion:

Fakta om null i Java

Referencevariabelværdi

Som standard har hver referencevariabel en null-værdi i Java. En referencevariabel bruges til at angive og gemme objekter/værdier af referencetype i Java. Klasser, arrays, opregninger og grænseflader osv. er nogle referencetyper i Java.

Så en referencetype gemmer en nulværdi, hvis intet objekt sendes til en referencetype.

Lad os tage et eksempel for at forstå, hvordan en referencevariabel fungerer for null-værdi:

NullExample2.java

 // import classes and packages if any public class NullExample2 { // declare two objects private static Object obj1; private static Object obj2; // main() method start public static void main (String[] args) { // print both objects System.out.println('The value of obj1 is: '+obj1); System.out.println('The value of obj2 is: '+obj2); } }  

Produktion:

Fakta om null i Java

Nul Type

I Java er null hverken et objekt eller en type. Det er en speciel værdi, som vi kan tildele enhver referencetypevariabel. Vi kan støbe null ind i enhver type, som vi ønsker, såsom streng, int, double osv.

Lad os tage et eksempel for at forstå, hvordan vi kan tildele nulværdier til enhver referencetype.

NullExample3.java

 // import classes and packages if any public class NullExample3 { // main() method start public static void main (String[] args) { // pass a null value to a different type of variable // pass null to String String str = null; // pass null to Integer Integer itr = null; // pass null to Double Double dbl = null; // casting null to String String castedStr = (String)null; // casting null to Integer Integer castedItr = (Integer)null; // casting null to Double Double castedDbl = (Double)null; // print all reference type System.out.println('The value of str is: '+str); System.out.println('The value of itr is: '+itr); System.out.println('The value of dbl is: '+dbl); System.out.println('The value of castedStr is: '+castedStr); System.out.println('The value of castedItr is: '+castedItr); System.out.println('The value of castedDbl is: '+castedDbl); } }  

Produktion:

Fakta om null i Java

Autoboxing og Unboxing

Autoboksning og Unboxing er de to vigtigste operationer, som vi udfører i Java. Compileren kaster NullPointerException når vi tildeler en nulværdi til enhver primitiv indrammet datatype, mens vi udfører handlingerne.

Lad os tage et eksempel for at forstå autoboxing og unboxing-kendsgerningen ved null.

NullExample4.java

 // import classes and packages if any public class NullExample4 { // main() method start public static void main (String[] args) throws java.lang.Exception { // pass null value to a reference type Integer itr = null; // perform unboxing operation int data = itr; // print both objects System.out.println('The value of itr is: '+itr); System.out.println('The value of data is: '+data); } }  

Produktion:

Fakta om null i Java

Forekomsten af ​​Operatør

For at kontrollere, om en objekt er en instans af den angivne type eller ej, bruger vi forekomst af operatør. Det forekomst af operatoren returnerer sand, når værdien af ​​udtrykket ikke er null på kørselstidspunktet. Det spiller en vigtig rolle i typecasting-tjek.

Lad os tage et eksempel for at forstå forekomst af operatør:

NullExample5.java

 // import classes and packages if any public class { // main() method start public static void main (String[] args) throws java.lang.Exception { // pass null value to a reference type Integer m = null; // pass a value to a reference type Integer n = 20; // print instanceof values System.out.println(m instanceof Integer); System.out.println(n instanceof Integer); } }  

Produktion:

Fakta om null i Java

Statisk vs. Ikke-statiske metoder

Vi kan ikke kalde en ikke-statisk metode på en referencevariabel med en nulværdi. Hvis vi kalder det, vil det kaste NullPointerException, men vi kan kalde den statiske metode med referencevariable med null-værdier. Da statiske metoder er bundet ved hjælp af statisk binding, vil de ikke kaste Null pointer Exception.

Lad os tage et eksempel for at forstå null:

NullExample6.java

 // import classes and packages if any public class NullExample6 { // define static method public static void staticMethod() { //it can be called by using a null reference System.out.println('static method can be called by null reference.'); } // define non static method public void nonStaticMethod() { //it cannot be called by using a null reference System.out.println('static method cannot be called by a null reference.'); } // main() method start public static void main (String[] args) throws java.lang.Exception { NullExample6 exp = null; exp.staticMethod(); exp.nonStaticMethod(); } }  

Produktion:

Fakta om null i Java

== og != Operatører

I Java er disse to operatorer tilladt med null. Begge operatører er nyttige til at kontrollere null med objekter i Java.

Lad os tage et eksempel for at forstå, hvordan disse to operatører arbejder med null.

NullExample7.java

 // import classes and packages if any public class NullExample7 { // main() method start public static void main (String[] args) { // pass null value to String type of variables // pass null to str1 String str1 = null; // pass null to str2 String str2 = null; // pass null to str3 String str3 = 'Test'; // compare strings if(str1 == str2){ System.out.println('str1 and str2 both are equal'); }else{ System.out.println('str1 and str2 are not equal'); } if(str2 == str3){ System.out.println('str2 and str3 both are equal'); }else{ System.out.println('str2 and str3 are not equal'); } if(str3 == str1){ System.out.println('str3 and str1 both are equal'); }else{ System.out.println('str3 and str1 are not equal'); } } }  

Produktion:

Fakta om null i Java

Hver eneste Java-udvikler bør have kendskab til alle de ovenfor diskuterede fakta om null.