반응형
Exception Type | Description |
Exception | .NET Framework에서 모든 예외들의 Main 클래스 |
AmbiguousMatchException | 클래스를 호출했는데, 어떤 클래스인지 확인할 수 없을 때 발생 |
ArgumentException | 메서드의 Argument(Parameter)가 유효하지 않을 때 발생 |
ArgumentNullException | 메서드의 Argument가 허용할 수 없는 null Reference 일 때 발생 |
ArgumentOutOfRangeException | 메서드의 Argument가 허용할 수 없는 범위 외의 값일 때 발생 |
AppDomainUnloadedException | 로드되지 않은 어플리케이션 도메인에 접근하려고 할 때 발생 |
ArithmeticException | 계산상의 오류가 있을 때 발생 |
ArrayTypeMismatchException | 두 배열이 동일한 타입의 배열인지 확인한 뒤 같지 않을 때 발생 |
BadImageFormatException | DLL이나 실행 프로그램의 이미지가 올바르지 않을 때 발생 |
CannotUnloadAppDomainException | 어플리케이션의 도메인 언로드에 실패할 때 발생 |
ConfigurationException | 환경설정의 오류가 있을 때 발생 |
ContextMarshalException | 마샬링(아래 설명추가)을 하는데 실패할 때 발생 |
CryptographicExcpetion | 암호화 작업중 오류가 있을 때 발생 |
DataException | .NET 구성 요소를 사용해서 오류가 있을 때 발생 |
DivideByZeroException | 0으로 나눗셈을 하려고 할 때 발생 |
ExecutionEngineException | 실행 엔진 오류가 있을 때 발생 |
- .NET 4.5부터는 사용하지 않음 | |
ExternalException | 모든 COM interop 예외 및 SEH 예외에 대한 기본 예외 형식 |
<대표적인 케이스> - Data.Common.DbException - Data.OleDb.OleDbException - Messaging.MessageQueueException - Runtime.InteropServices.COMException - Runtime.InteropServices.SEHException - Web.HttpException |
|
FileNotFoundException | 찾는 파일이 없을 때 발생 |
FormatException | Argument로 쓰이는 문자열 서식이 잘못되거나 그 사양에 맞지 않을 때 발생 |
IndexOutOfRangeException | 배열에서 찾고자 하는 인덱스(순서)가 범위 밖에 있을 때 발생 |
InvalidCastException | Type Casting 에 실패할 때 발생 |
NullReferenceException | 참조하는 Reference가 null일 때 발생 |
OutOfMemoryException | 메모리 영역을 넘어가는 값이나 Reference를 가져올 때 발생 |
* Exception
ApplicationException / SystemException / IOException 등의 부모 클래스
* SystemException
ArithmeticException / ArgumentException / OutOfMemoryExcpetion / NullReferenceException / IndexOutOfRangeException 등의 부모 클래스
* IOException
EndOfStreamException / FileNotFoundException / DirectoryNotFoundException 등의 부모 클래스
* ArithmeticException ( 계산상의 오류 )
- DivideByZeroException
- OverflowException
* ArgumentException ( Argument 오류 - 파라미터 관련 )
- ArgumentOutOfRangeException
- ArgumentNullException
* 마샬링<Marshalling>이란?
데이터를 전송하기 위한 포맷으로 변환하는 것을 말한다. ( 전송하기 위해 만들었던 포맷을 다시 되돌리는 것은 언마샬링<Unmarshalling>)
728x90
'C, C++, C#' 카테고리의 다른 글
C++ 에서 string 문자열과 char 배열 비교하기 (0) | 2023.05.23 |
---|---|
C / C++ 에서 int main() 과 int main(void) 의 차이점 (3) | 2021.02.03 |
C 언어 기초 (C Language) (0) | 2021.02.01 |