try-catch 블록의 사용법은 어떻게 되나요?
try-catch 블록은 프로그래밍에서 예외(에러)를 처리하기 위한 구문입니다.
코드 실행 중 발생할 수 있는 예외 상황을 미리 대비하여 프로그램이 중단되지 않고 적절히 대응할 수 있도록 도와줍니다.
주요 프로그래밍 언어들(Java, C , JavaScript, Python 등)에서 사용법은 유사하지만 문법은 약간씩 다릅니다.
일반적인 사용법과 개념을 설명하겠습니다.
--- try-catch 블록의 기본 구조 ```pseudo try { // 예외가 발생할 수 있는 코드 } catch (ExceptionType e) { // 예외 처리 코드 } ``` - try 블록: 정상적으로 실행될 코드 작성 - catch 블록: try 안에서 예외가 발생할 경우 실행할 코드 작성 - ExceptionType : 처리하고자 하는 예외 유형을 지정 (언어에 따라 다름) - e : 발생한 예외 객체(정보 포함) --- 동작 과정 1. try 블록의 코드를 실행합니다.
2. 예외가 발생하지 않으면 catch 블록은 무시되고, 이후 코드가 계속 실행됩니다.
3. 예외가 발생하면 즉시 try 블록 실행을 중지하고, 해당 예외 타입에 맞는 catch 블록으로 제어가 넘어갑니다.
4. catch 블록 내에서 예외에 대응하는 코드를 실행합니다.
5. 모든 catch 블록 실행이 끝나면 프로그램은 계속 진행됩니다.
--- 예시 Java ```java try { int result = 10 / 0; // 예외 발생: ArithmeticException } catch (ArithmeticException e) { System.out.println("0으로 나눌 수 없습니다.
"); } System.out.println("프로그램 계속 진행"); ``` C ```csharp try { int[] arr = new int[2]; Console.WriteLine(arr[3]); // IndexOutOfRangeException 발생 } catch (IndexOutOfRangeException e) { Console.WriteLine("배열 인덱스 초과"); } ``` JavaScript ```javascript try { let json = '{ invalid json}'; JSON.parse(json); // SyntaxError 발생 } catch (e) { console.log("잘못된 JSON 형식입니다.
"); } ``` --- 추가 사항 - finally 블록 : try-catch 다음에 붙여서, 예외 발생 여부와 상관없이 항상 실행되는 코드를 작성할 수 있음 ```java try { // 코드 } catch (Exception e) { // 예외 처리 } finally { // 항상 실행됨(리소스 해제 등) } ``` - 여러 catch 사용 가능 (언어에 따라 다름) 예를 들어 Java에서는 여러 예외 타입별로 구분해 처리 가능 - try 블록에 예외 발생 가능성이 있는 코드를 작성 - catch 블록에서 예외를 받아서 적절한 조치 - 프로그램 비정상 종료 방지 및 안정성 확보 - finally 블록으로 리소스 정리 가능 try-catch 블록을 적절히 활용하면 사용자 경험을 개선하고, 프로그램의 예외 상황 대처 능력을 향상시킬 수 있습니다.