Intern
Mis on null-viide?
sobes.tech AI
Vastus AI-lt
Null on väärtus, mis näitab objekti puudumist. See ei viita ühelegi reaalsele klassi eksemplarile.
Erinevates programmeerimiskeeltes võib nullil olla erinevad esindused:
- Java/C#:
null - Python:
None - JavaScript:
nulljaundefined(nianssidega) - C++:
nullptr(alates C++11) võiNULL(enne C++11, sisuliselt 0)
Null-viidete kasutamine võib põhjustada jooksva ajal vigu nagu "NullPointerException" (või sarnased), kui püüame pääseda objekti liikmele null-viidete kaudu. See on üks levinumaid vigu arenduses.
Java näide:
// Muutuja deklaratsioon null-viitega
String myString = null;
// Meetodi kutsumine null-viitega põhjustab NullPointerExceptioni
// int length = myString.length();
Python näide:
# Muutuja deklaratsioon None-iga
my_list = None
# Pääs meetodile või elemendile põhjustab AttributeErrori või TypeErrori
# print(my_list[0])
Null-viidete käsitlemine on oluline osa arendusest ja testimisest. Kasutatakse erinevaid mustreid ja tehnikaid riskide minimeerimiseks, näiteks:
- Nulli kontroll (
if (obj != null)) - Optional kasutamine (Java 8+, C++17+)
- Anotatsioonide kasutamine (
@Nullable,@NonNull) - Turvaliste juurdepääsutehete kasutamine (
?.C#-s).