우리가 알고 있듯이 예외는 프로그램이나 응용 프로그램의 흐름이 중단되는 것을 의미합니다. 이 원치 않는 이벤트는 예외로 알려져 있으며 일반적으로 코드 내에서 잘못된 것에 대한 표시를 제공합니다. 기본적으로 특히 언어 C#에서 예외는 시스템 또는 응용 프로그램 수준 예외일 수 있습니다. 따라서 기본적으로
Sr. 아니요. | 키 | 시스템 수준 예외 | 애플리케이션 수준 예외 |
---|---|---|---|
1 | 파생 | 시스템 예외는 그 자체로 SystemException의 파생 클래스인 기본 클래스 System.SystemException에서 파생됩니다. | 반면에 애플리케이션 수준 예외는 SystemException의 파생 클래스인 기본 클래스 System.ApplicationException에서 파생됩니다. |
2 | 발생 횟수 | 일반적으로 데이터베이스 충돌, 바인딩 오류 등과 같이 복구할 수 없거나 치명적인 오류가 발생할 때마다 시스템 예외가 발생했습니다. | 응용 프로그램 수준 예외의 경우, 예를 들어 잘못된 유형의 입력 데이터, 산술 예외 등 복구 가능한 일부 오류가 발생합니다. |
3 | 처리 | 시스템 수준 예외의 경우 오류는 치명적이므로 이러한 유형의 예외에 대한 처리 또는 방지 방법이 없습니다. | 반면에 응용 프로그램 수준의 예외는 일반적으로 try-catch 블록을 사용하여 코드 수준에서 처리됩니다. 코드에 발생한 예외에 대한 try 및 catch 블록이 없으면 예외를 처리하는 데 Page_Error 루틴을 사용할 수 있는 페이지 수준으로 전파됩니다. |
4 | 사용자 정의 | 시스템 수준 예외의 경우 예외 사용자 정의가 지원되지 않습니다. | 반면에 사용자 정의 애플리케이션 수준 예외를 정의하고 선언할 수 있습니다. |
5 | 세대 | 위에서 언급했듯이 시스템 수준 예외는 .NET 공용 언어 런타임에 의해 발생하며 거의 모든 .Net 응용 프로그램에서 사용됩니다. | 반면에 비즈니스 메소드에 대한 잘못된 입력 인수 값과 같이 복구 가능한 오류가 발생한 경우 애플리케이션 수준 예외가 발생합니다. 클라이언트에게 애플리케이션별 또는 비즈니스 로직 문제를 알려줍니다. |