Διαδρομές
/
Java
Java
/
Ύλη
/
Δυνατότητα null
Δυ

Δυνατότητα null σε Java

1 άσκηση

Σχετικά με την έννοια Δυνατότητα null

Στη Java, το literal null χρησιμοποιείται για να δηλώσει την απουσία μιας τιμής.

Οι πρωτόγονοι τύποι δεδομένων στη Java έχουν όλοι μια προεπιλεγμένη τιμή και επομένως δεν μπορούν ποτέ να είναι null. Κατά σύμβαση, ξεκινούν με πεζό γράμμα, π.χ. int.

Οι τύποι αναφοράς περιέχουν τη διεύθυνση μνήμης ενός αντικειμένου και μπορούν να έχουν τιμή null. Γενικά ξεκινούν με κεφαλαίο γράμμα, π.χ. String.

Αν προσπαθήσεις να αναθέσεις σε μια πρωτόγονη μεταβλητή την τιμή null, θα προκύψει σφάλμα κατά τη μεταγλώττιση, καθώς η μεταβλητή κρατά πάντα μια προεπιλεγμένη τιμή του τύπου που της έχει ανατεθεί.

// Throws compile time error stating the required type is int, but null was provided
int number = null;

Αν αναθέσεις σε μια μεταβλητή αναφοράς την τιμή null, δεν θα προκύψει σφάλμα κατά τη μεταγλώττιση, καθώς οι μεταβλητές αναφοράς μπορούν να είναι null.

//No error will occur as the String variable str is nullable
String str = null;

Ενώ η πρόσβαση σε μια μεταβλητή αναφοράς που έχει τιμή null μεταγλωττίζεται κανονικά, έχει ως αποτέλεσμα να πεταχτεί μια NullPointerException κατά την εκτέλεση.

int[] arr = null;

// Throws NullPointerException at runtime
arr.length;

Μια NullPointerException πετιέται όταν προσπαθείς να προσπελάσεις μια μεταβλητή αναφοράς που είναι null αλλά απαιτεί ένα αντικείμενο.

Για να δουλέψεις με ασφάλεια με τιμές που μπορούν να είναι null, καλό είναι να ελέγχεις αν είναι null πριν δουλέψεις μαζί τους, κάτι που μπορείς να κάνεις χρησιμοποιώντας τελεστές ισότητας όπως == ή !=:

int[] arr = null;

if(arr != null) {
    System.out.println(arr.length);
} else {
    //Perform an alternate action when arr is null
}
Επεξεργασία μέσω GitHub Ο σύνδεσμος ανοίγει σε νέο παράθυρο ή καρτέλα

Μάθε την έννοια Δυνατότητα null