Sobes.tech
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: null ja undefined (nianssidega)
  • C++: nullptr (alates C++11) või NULL (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).