Pytania pomocnicze - INF.04
Projektowanie, programowanie i testowanie aplikacji - pytania pomocnicze rozwijające tematy z pytań egzaminacyjnych. Łącznie: 3777. Strona 52 z 52.
Do czego służy metoda __del__ w Pythonie?
Metoda `__del__` jest wywoływana podczas niszczenia obiektu. Pełni funkcję zbliżoną do destruktora.
Jaka jest różnica między __init__ a __del__?
`__init__` wykonuje się przy tworzeniu i inicjalizacji obiektu. `__del__` wykonuje się przy jego usuwaniu z pamięci.
Czy instrukcja del zawsze natychmiast wywołuje __del__?
Nie zawsze. `del` usuwa referencję do obiektu, ale samo zniszczenie obiektu zależy od mechanizmu zarządzania pamięcią.
Czym są metody specjalne w Pythonie?
To metody o nazwach zaczynających się i kończących podwójnym podkreśleniem, np. `__init__`, `__str__`, `__repr__`, `__del__`. Python wywołuje je automatycznie w określonych sytuacjach.
Do czego służy metoda __str__?
`__str__` zwraca czytelną tekstową reprezentację obiektu, używaną np. przez funkcję `print()`.
Do czego służy metoda __repr__?
`__repr__` zwraca techniczny opis obiektu, przydatny głównie dla programisty, np. podczas debugowania.
Dlaczego nie powinno się bezkrytycznie polegać na __del__ przy zwalnianiu zasobów?
Moment wywołania `__del__` może być trudny do przewidzenia. Do bezpiecznego zwalniania zasobów lepiej stosować menedżery kontekstu, np. instrukcję `with`.