본문 바로가기
개발 노트/기초 지식

[java] 예외 Exception

by tokkiC 2022. 5. 7.

코딩시 생기는 문제의 종류 error / exception


코딩을 하며 생기는 문제의 종류는 error 에러, 오류 와 exception 예외로 나뉜다


error : 개발자가 예측할수 없는 하드웨어의 오작동이나 고장 등의 이유로 생기는 문제

exception : 개발자의 논리 설계 오류로 발생하는 문제로 잘못될때의 경우의 수를 예측하여 해결 가능한 문제


문제가 error 건 exception 프로그램을 실행시키려면 반드시 문제의 원인을 해결해야한다

error 의 경우 보통 문제가 그 즉시 시스템이나 프로그램을 종료 시키는 경우가 많으나

exception 의 경우 컴파일 머신에서 상황에 맞는 여러 예외의 이름과 기능을 제시하여 개발자에게 지금 발생한 예외가

어떤 예외이고 어떻게 코드를 수정하여 해결하는 것이 좋은지 힌트를 준다


예외 exception 의 사용 예시


게임에서 사용자에게 닉네임을 입력받도록 코딩을 짜보자

닉네임의 입력은 아래의 조건을 만족해야만 한다고 하자

  1. 닉네임의 문자열은 8글자 이하로 사용가능하다
  2. 공백, 특수문자는 사용불가능하다
  3. 중복 닉네임은 사용불가능하다

닉네임 작성 시 빈번하게 저 조건들을 어기는 문제가 생길것이다

저기서 생기는 문제는 문제원인이 쉽게 예측가능하고 논리구조를 조금 손봐서 코드를 바꾸는 것으로 해결 가능하니 예외라한다

예상되는 문제는

  1. 닉네임의 문자가 8글자보다 많다
  2. 공백, 특수문자를 사용하였다
  3. 데이터베이스에 이미 중복된 닉네임이 존재한다

이것들을 해결하기위해서

이전까지는 논리 문제 발생 시, if else 문 등을 사용해서 해당 조건이면 이렇게 실행해라 하여

발생하는 경우의 수를 해결하였다

하지만 문제를 조건문이 아닌 예외로 처리할수도 있는데 try - catch 문을 사용하게 된다

try - catch 는 다음 글에서 말하겠다

예외뜨잖아! 개발자 불러와!

댓글