Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
Wyjątek - Wikipedia, wolna encyklopedia

Wyjątek

Z Wikipedii

Wyjątek to mechanizm kontroli przepływu występujący w mikroprocesorach oraz we współczesnych językach programowania służący do obsługi zdarzeń wyjątkowych, a w szczególności sytuacji błędnych.


Wyjątki (ang. exception) w mikroprocesorach można podzielić na kilka podstawowych rodzajów:

  • niepowodzenia (ang. fault)
  • błędy nienaprawialne (ang. abort)
  • pułapki (ang. trap)

Przykładami zgłaszanych wyjątków są: dzielenie przez zero, dostęp do strony pamięci nie znajdującej się w pamięci RAM, itp.
Zobacz hasło: przerwanie


Języki programowania wspierające mechanizm wyjątków, umożliwiają zdefiniowanie w jakim fragmencie kodu może powstać wyjątek, oraz jak wyjątek obsłużyć jeśli zostanie zgłoszony. Zgłoszenie sytuacji wyjątkowej jest możliwe w każdym miejscu kodu. Zgłoszenie to nazywane jest czasem podniesieniem (ang. raise) wyjątku lub rzuceniem (ang. throw) wyjątku. Poniżej przykładowy program w języku Python:

a = b + c
d = c * e
try:           # z ang. spróbuj
    z = a/d    # podzielić
except ZeroDivisionError: # złap (ang. catch) wyjątek dzielenia przez zero
 
    print "dzielenie przez zero"
    raise Exception("Poważny błąd")  # zgłoś nowy wyjątek

W innych językach programowania struktura kodu jest podobna. Np. w C++ też jest blok try, zamiast except jest catch, a zamiast raise throw.

Mechanizm wyjątków składa się z trzech ważnych części:

  1. musimy mieć możliwość przechwytywania wyjątków - pewien blok kodu zostaje oznaczony (instrukcją try) jako kontrolowany na wystąpienie danego wyjątku, i jeśli w trakcie jego uruchomienia zostanie podniesiony wyjątek uruchamia się nasz kod go obsługujący
  2. musimy mieć możliwość podnoszenia wyjątków (raise, throw) - mechanizm ten przerywa wykonywanie bieżącej funkcji (bloku) i przekazuje podniesiony wyjątek do kontekstu, który tę funkcję wywołał. Proces ten jest powtarzany jest aż do napotkania kontekstu zawierającego kod obsługi dla danego wyjątku
  3. musimy mieć możliwość wykonywania pewnych operacji w trakcie tego przelotu - żeby zamknąć pewne pliki, itd. Bez tego mechanizm wyjątków traci wiele sensu - musimy przechwytywać i podnosić ponownie wiele wyjątków o których nic nie wiemy.

Mechanizm wyjątków posiadają m.in. następujące języki:

Wikicytaty
Zobacz w Wikicytatach kolekcję cytatów
o Wyjątku

Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com