Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Java

Πώς να Επισκευή Java : Lang Null Pointer Exception

A Εξαίρεση Null Pointer , ή java.lang.NullPointerException , συμβαίνει όταν μια εφαρμογή προσπαθεί να αποκτήσει πρόσβαση σε ένα είδος αναφοράς που δεν έχει προετοιμαστεί . Στην Java , nonprimitive είδη, όπως String ή Integer κατέχουν ένα δείκτη σε μια αξία , όχι η ίδια η τιμή . Εάν επιχειρήσετε να αναφερθώ σε ένα είδος αναφοράς και δεν έχει προετοιμαστεί , ο δείκτης δεν δείχνει σε τίποτα , και είναι ως εκ τούτου άκυρη . Αυτό συμβαίνει συνήθως όταν ένας τύπος αναφοράς είναι να περάσει ως επιχείρημα σε μια μέθοδο . Ο ευκολότερος τρόπος για να χειριστεί την εξαίρεση είναι να πείτε την μέθοδο τι να κάνει εάν λάβει null δείκτη . Οδηγίες
δημιουργία ενός απλού Class για να παράγει το NullPointerException
Η 1

Δημιουργήστε μια νέα κατηγορία στην αίτησή σας ως εξής . Αυτή η κατηγορία έχει σχεδιαστεί για να παράγουν ένα δείκτη null εξαίρεση

δημόσια τάξη NullPointTest {

δημόσια στατική άκυρη κύρια ( String [ ] args ) {

εργασία ( null) ? .

}

δημόσια στατική άκυρη εργασία ( Integer x ) {

int y = 1 + x ?

}

}

2

Εκτελέστε την τάξη . Τα ακόλουθα θα τυπώσει στην κονσόλα :

Εξαίρεση νήμα "κύριος " java.lang.NullPointerException

στο NullPoint.task ( NullPoint.java : 10 )

στο NullPoint . κύρια ( NullPoint.java : 6 ) .
εικόνων 3

Παρατηρήστε το ζήτημα παρουσιάζεται επειδή περνάτε άκυρη και η μέθοδος σας "καθήκον" αναμένει έναν δείκτη σε ακέραιο

Εκτύπωση
ένα σφάλμα για τον εντοπισμό σφαλμάτων
Η 4

Προσθέστε τον ακόλουθο κώδικα πριν από την έναρξη της μεθόδου "αποστολή" . Αυτό θα σας επιτρέψει να διορθώσετε από δείχνοντάς σας όπου γίνεται λήψη η μηδενική αξία .

If ( x == null) {

System.out.println ( "αποστολή ( ) έλαβε ένα null τιμή για το x ")? }


5

Ελέγξτε για να δείτε ότι ο κώδικας σας μοιάζει με το ακόλουθο :

δημόσια τάξη NullPointTest {

δημόσια στατική άκυρη κύρια ( String [ ] args ) {

εργασία ( null) ?

}

δημόσια στατική άκυρη εργασία ( Integer x ) {

αν ( x == null) {

System.out.println ( "αποστολή ( ) έλαβε μια μηδενική τιμή για x" ) ? }


int y = 1 + x ?

} }


Η 6

Εκτελέστε την τάξη . Το ακόλουθο θα πρέπει να εκτυπώσετε στην οθόνη στη θέση του για την εξαίρεση: « εργασία ( ) έλαβε μηδενική τιμή για το x . "
Εικόνων Χειρισμός της εξαίρεσης
Η 7

Αντιστοίχηση προεπιλεγμένη τιμή όταν μια τιμή null περνά με την ακόλουθη προσθήκη στην αρχή της μεθόδου "καθήκον"

if ( x == null) {

x = 1 ? .

}
8

Ελέγξτε για να δείτε ότι ο κώδικας σας μοιάζει με το ακόλουθο :

δημόσια τάξη NullPointTest {

δημόσια στατική άκυρη κύρια ( String [ ] args ) {

εργασία ( null) ?

}

δημόσια στατική άκυρη εργασία ( Integer x ) {

if ( x == null) {

x = 1 ?

}

int y = 1 + x ?

} }


Η 9

Εκτελέστε την τάξη . Θα πρέπει πλέον να δείτε το NullPointerException επειδή x τώρα δείχνει προς 1 .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα