Przejdź do głównej treści

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`.

Potwierdzenie

Informacja