17.3. Obsługa wyjątków
Podziękowania dla Steve’a Arneila
Problem
Chcemy obsłużyć zaistniały wyjątek.
Rozwiązanie
Kod obsługi wyjątku umieszcza się w bloku begin/rescue
. Kod umieszczony wewnątrz klauzuli rescue
powinien obsługiwać wyjątek i umożliwiać kontynuowanie działania programu.
Użycie klauzuli rescue
zademonstrowano poniżej:
def raise_and_rescue begin puts 'Przed zgłoszeniem wyjątku.' raise 'Wystąpił błąd.' puts 'Po zgłoszeniu wyjątku.' rescue puts 'Wyjątek obsłużono!' end puts 'W bloku begin.' end raise_and_rescue # Przed zgłoszeniem wyjątku. # Wyjątek obsłużono! # W bloku begin.
Wyjątek nie blokuje możliwości kontynuowania działania programu, ale kod, który został przerwany przez wyjątek, nigdy się nie wykona. Po obsłużeniu ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.