Chcę poznać różnicę między System.ApplicationException i System.Exception.Różnica między wyjątkami aplikacji a wyjątkami systemowymi
Może ktoś wyjaśnić
Chcę poznać różnicę między System.ApplicationException i System.Exception.Różnica między wyjątkami aplikacji a wyjątkami systemowymi
Może ktoś wyjaśnić
Pierwotnie były one przeznaczone do oddzielenia BCL określone i zdefiniowane przez użytkownika wyjątki. ApplicationException miał być klasą podstawową dla wszystkich zdefiniowanych przez użytkownika wyjątków. Pomysł polegał na tym, że dałoby to prosty sposób na odróżnienie wyjątków od struktury i niestandardowych wyjątków.
Niestety, ta polityka nie była egzekwowana od początku, w wyniku czego w BCL istnieje wiele sprzeczności z tą zasadą. Obecna rekomendacja nie polega na dziedziczeniu z tych wyjątków.
Oto miły wpis w blogu na temat:
Wszystko wyjątek wywodzi się z klasy Exception Base. Wyjątki mogą być generowane programowo lub mogą być generowane przez system. Wyjątek aplikacji służy jako klasa podstawowa dla wszystkich specyficznych klas wyjątków aplikacji. Pochodzi z wyjątku, ale nie zapewnia żadnej rozszerzonej funkcjonalności. Należy wyprowadzić niestandardowe wyjątki aplikacji z wyjątku aplikacji. Wyjątek aplikacji jest używany, gdy chcemy zdefiniować zdefiniowany przez użytkownika wyjątek. Chociaż wyjątek od systemu to wszystkie zdefiniowane przez .NET