공부/Java

[공부/Java] 자바의 main() 메소드, 예외, 예외 처리, try-catch-finally, 예외 클래스

yulee_to 2022. 7. 11. 20:40

자바
Java


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