main() 메소드
- 자바 응용 프로그램의 실행 시작 메소드
- public static void main(String[] args){}
main()메소드의 인자 전달
- c:> java Hello 3 5.7을 수행하면 Hello class의 main메소드의 args에 3과 5.7이 전달됨
- args[i]로 배열 형태로 접근 가능
- 이클립스에서 main 메소드의 인자 전달
- Run -> Run Configurations -> Arguments 탭에서 Program arguments 칸에 값을 넣으면 args로 넘어감
자바의 예외
- 컴파일 오류
- 문법에 맞지 않게 작성된 코드
- 컴파일 시 발견
- 예외(Exception)
- 오동작이나 결과에 악영향을 미칠 수 있는 실행 중 발생한 오류
- ex) 정수를 0으로 나누는 경우, 배열보다 큰 인덱스로 접근하려는 경우...
- 오동작이나 결과에 악영향을 미칠 수 있는 실행 중 발생한 오류
예외 처리 : try-catch-finally문
- 예외 처리
- 예외가 발생할 때 실행되는 코드
- try-catch-finally문 사용
- try : 시도해볼 코드(예외 발생 가능성이 있는 코드)
- catch : 예외가 발생했을 때 실행될 코드
- finally : 예외 발생 여부와 상관없이 무조건 실행되는 코드
자바의 예외 클래스
예외 타입(예외 클래스) | 예외 발생 경우 | 패키지 |
ArithmeticException | 정수를 0으로 나눌 때 발생 | java.lang |
NullPointerException | null 레퍼런스를 참조할 때 발생 | java.lang |
ClassCastException | 변환할 수 없는 타입으로 객체를 변환할 때 발생 | java.lang |
OutOfMemoryError | 메모리가 부족한 경우 발생 | java.lang |
ArrayIndexOutOfBoundsException | 배열의 범위를 벗어난 접근 시 발생 | java.lang |
IllegalArgumentException | 잘못된 인자 전달 시 발생 | java.lang |
IOException | 입출력 동작 실패 또는 인터럽트 시 발생 | java.io |
NumberFormatException | 문자열이 나타내는 숫자와 일치하지 않는 타입의 숫자로 변환 시 발생 | java.lang |
InputMismatchException | Scanner 클래스의 nextInt()를 호출하여 정수로 입력받고자 하였지만, 사용자가 문자를 입력한 경우 | java.util |
728x90
'공부 > Java' 카테고리의 다른 글
[공부/Java] JVM, JRE, JDK (0) | 2022.12.24 |
---|---|
[공부/Java] JVM 구성 - Class Loader, Execution Engine, Garbage Collector (0) | 2022.12.24 |
[공부/Java] 자바의 배열, 선언, 생성, 초기화, 인덱스, 치환, 공유, 크기, for-each문, 리턴 (0) | 2022.07.11 |
[공부/Java] 자바 키보드 입력 - Scanner (0) | 2022.07.04 |
[공부/Java] 자바의 데이터 타입, 리터럴, var, 상수, 타입 변환, 수식연산자, 조건문, 반복문 (0) | 2022.07.04 |