- 공유 링크 만들기
- X
- 이메일
- 기타 앱
안녕하세요 메르세데스입니다. C#의 예외처리를 이어서 진행하도록 하겠습니다.
System.Exception 클래스는 모든 처리구문의 부모클래스에 해당합니다. 그렇다는 이야기는 모든 예외를 Exception으로 전부 다 받을 수 있다는 그런 이야기같네요.. 네 맞습니다.
하지만.. 모든 예외라는것이 우리가 의도하지 않은 것들도 포함될 수 있기 때문에.. 얼마만큼에 해당하는 케이스가 예외로 분류가되는지 감을 잡을 수 없죠.. 그래서 버그같은것들이 생길수도 있다는것을 명심하셔야겠습니다. 가급적이면 예외케이스를 구체화시켜서 처리해주시는게 필요할 것같네요..
위의 예제를 보면.. catch (Exception e ) ... 이렇게 예외를 받았는데요.. 다 받아집니다.
또한 위에 보시면 throw ~ Excep.. 이렇게 해서 처리한 것이 있습니다. 이것은 예외를 발생시키는 구문입니다.
이렇게 throw 로 예외를 던지면..예외를 받아서 처리할 수 있네요..
try ~ catch 이렇게 해서 예외처리를 할 수 있지만.. 예기치못한 상황이 발생한다면.. 이것안으로도 해결이 안되는 상황이 있을 수 있는데요..
네트워크관련된 요소가 추가되거나 db세션등을 닫는등의 다른곳에서 값을 받아오는류의 상황이 중간에 꺼어버리면.. try ~ catch 절 만으로도 해결이 안될 수 있습니다
이럴경우에는
finally { } 절을 아래에 추가하시면되겠습니다. 뒷마무리를 깔끔하게? 할 수 있도록 지원해주는 구문입니다...
finally절의 특징은.. 무조건 실행된다는 특징이 있습니다. 그렇기때문에 더욱 유용할 것같네요..^^;
댓글
댓글 쓰기