Intern
Šta je null referenca?
sobes.tech АИ
Одговор од АИ
Null je vrednost koja ukazuje na odsustvo objekta. Ne referiše ni na kakav pravi primerak klase.
U različitim programskim jezicima, null može imati različite prikaze:
- Java/C#:
null - Python:
None - JavaScript:
nulliundefined(sa nijansama) - C++:
nullptr(od C++11 nadalje) iliNULL(pre C++11, u suštini 0)
Korišćenje null referenci može dovesti do grešaka u izvršenju poput "NullPointerException" (ili sličnih), ako se pokuša pristupiti članu objekta putem null reference. Ovo je jedna od najčešćih grešaka u razvoju.
Primer u Javi:
// Deklaracija promenljive sa null referencom
String myString = null;
// Pokušaj poziva metode na null referenci će izazvati NullPointerException
// int length = myString.length();
Primer u Pythonu:
# Deklaracija promenljive sa None
my_list = None
# Pokušaj pristupa metodu ili elementu će izazvati AttributeError ili TypeError
# print(my_list[0])
Obrada null referenci je važan deo razvoja i testiranja. Koriste se različiti obrasci i tehnike za minimiziranje rizika, kao što su:
- Provera na null (
if (obj != null)) - Korišćenje Optional (u Javi 8+, C++17+)
- Korišćenje anotacija (
@Nullable,@NonNull) - Korišćenje sigurnih operatora pristupa (
?.u C#)