목차
- 리눅스 우분투 자바 개발환경(OpenJDK8) 설치 예제 이전포스팅
- javac 활용 자바 소스 코드 컴파일 예제 이전 포스팅
- 자바 예외처리를 하지않을 경우 문제점 예제
- 자바 try catch 문으로 예외처리 예제
- 자바 throw 발생 및 Exception 출력 예제
리눅스 우분투 자바 개발환경(OpenJDK8) 설치 예제 이전포스팅
예제를 수행하기에 앞서 만약 자바 개발 환경을 구성하지 않으셨다면 예제를 따라하기에 어려움이 있습니다. 또한 리눅스 우분투 환경을 사용하여 본 포스팅은 예제를 작성하였습니다. 우분투 환경에서 JDK 설치를 하지 않았다면 아래의 포스팅 링크를 참고하여 자바 개발환경을 구성해주세요.
2023.08.10 - [Linux] - [Linux/Java] 리눅스 우분투에 자바 개발도구 JDK 설치 예제(OpenJDK8)
javac 활용 자바 소스 코드 컴파일 예제 이전 포스팅
자바 소스 코드를 실행해보려면 컴파일 과정이 필요합니다. javac를 사용해서 자바 소스 파일을 실행파일로 변환합니다. 만약 아직 컴파일 방법을 모르신다면 아래 링크를 참조하여 컴파일 방법을 학습해주세요. 아래의 예제 소스 코드들을 컴파일하여 직접 실행해봐야 더 효율적인 학습이 됩니다.
2023.08.10 - [Linux] - [Linux/Java] 리눅스 우분투에서 java 컴파일 및 실행 예제(javac)
자바 예외처리를 하지않을 경우 문제점 예제
아래는 예외가 발생하는 코드를 try catch 구문 없이 실행할 경우 프로그램이 비정상 종료되는 문제점을 확인하는 예제입니다. 개발자는 완벽한 설계의 프로그램을 만들 수 없기때문에 적절한 예외처리가 필요합니다.
public class Example {
public static void main(String[] args) {
String str = null;
int length = str.length(); // 예외 발생 가능한 코드
System.out.println("String length: " + length);
}
}
자바 try catch 문으로 예외처리 예제
아래는 예외가 발생할 수 있는 코드를 try catch 구문으로 감싸주면서 예외처리를 하는 예제입니다. 이런 경우 예외가 발생하더라도 catch문에서 핸들링이 가능하기때문에 프로그램이 비정상 종료되지 않습니다. 다만, 이후 코드가 문제없이 실행될 수 있도록 처리해야합니다.
public class Example {
public static void main(String[] args) {
String str = null;
try {
int length = str.length(); // 예외 발생 가능한 코드
System.out.println("String length: " + length);
} catch (NullPointerException e) {
System.out.println("Caught an exception: " + e);
}
}
}
자바 throw 발생 및 Exception 출력 예제
간혹 개발자가 특정상황에 직접 예외를 발생시켜야 할 때가 있습니다. 이를 위해 throw 키워드를 사용합니다. 지금 메소드를 호출한 밖의 메소드에 예외 코드와 함께 이후 코드를 진행되지 않도록 전달할 수 있습니다. 또한 현재 발생한 오류가 어떤 오류인지 출력이 가능합니다.
아래는 Custom exception message라는 예외를 직접 발생시킨 예제입니다.
public class Example {
public static void main(String[] args) {
try {
throw new Exception("Custom exception message"); // 예외 발생
} catch (Exception e) {
System.out.println("Caught an exception: " + e);
}
}
}