JVM이란


런타임 에러란


<aside> 1️⃣ 런타임 에러의 개념

</aside>

  1. 런타임 에러(Runtime error)는 프로그램이 실행 중인 동안 발생하는 오류를 의미한다. 이러한 오류는 프로그램이 컴파일되어 실행 가능한 형태로 변환된 후에 발생하는 오류로, 프로그램의 실행 시점에서 발생한다. 자바 런타임(Java Runtime)은 자바 프로그램이 실행되는 환경을 의미한다. 자바 프로그램은 일반적으로 소스 코드를 컴파일하여 자바 가상 머신(Java Virtual Machine, JVM)에서 실행된다. JVM은 운영체제와 자바 프로그램 사이에서 중개자 역할을 수행하며, 자바 프로그램을 실행하고 관리하는 역할을 한다. JVM은 자바 코드를 기계어로 변환하고 메모리 관리, 스레드 관리, 예외 처리 등을 수행한다.
  2. 런타임 에러는 프로그램이 실행 중인 동안 발생하므로, 컴파일러가 확인할 수 없는 오류이다. 일반적으로 프로그램의 실행 흐름, 데이터 입력, 외부 환경 변화 등과 관련된 문제로 인해 발생한다. 이러한 에러는 **예외(Exception)**로 처리될 수 있으며, 예외 처리를 통해 프로그램의 실행을 중단시키지 않고 오류에 대응할 수 있다.

<aside> 2️⃣ 런타임 에러의 종류

</aside>

  1. NullPointerException: null 참조를 사용하려고 할 때 발생한다.
  2. ArrayIndexOutOfBoundsException: 배열의 인덱스 범위를 초과하여 접근하려고 할 때 발생한다.
  3. ClassCastException: 잘못된 타입 변환을 시도할 때 발생한다.
  4. ArithmeticException: 0으로 나누기 등의 산술 연산 오류가 발생할 때 발생한다.
  5. NumberFormatException: 문자열을 숫자로 변환하려고 할 때, 잘못된 형식의 문자열이 포함되어 있을 때 발생한다.
  6. ConcurrentModificationException: 여러 스레드가 동시에 컬렉션을 수정하려고 할 때 발생한다.

이러한 런타임 에러들은 프로그램의 실행 환경, 데이터 입력, 외부 리소스에 의해 발생할 수 있으며, 예상하지 못한 상황에서 발생할 수도 있다. 따라서 프로그래머는 예외 처리를 통해 이러한 런타임 에러를 적절하게 처리하고, 프로그램의 안정성과 신뢰성을 확보해야 한다.

<aside> 3️⃣ 런타임 오류를 줄이는법

</aside>