[자바] 매개변수의 유효성 검사

June·2021년 1월 1일
0

자바

목록 보기
4/36

메서드의 구현부{}를 작성할 때, 제일 먼저 해야 하는 일이 매개변수의 값이 적절한 것인지 확인하는 것이다. 메서드를 작성하는 사람은 '호출하는 쪽에서 알아서 적절한 값을 넘겨주겠지'라는 생각을 절대로 가져서는 안된다. 타입만 맞으면 어떤 값도 매개변수를 통해 넘어올 수 있기 때문에, 가능한 모든 경우의 수에 대해 고민하고 그에 대비한 코드를 작성해야 한다.

아래에 저으이된 메서드 divide는 매개변수 x를 y로 나눈 결과를 실수(float)로 반환하는데, 0으로 나누는 것은 금지되어 있기 때문에 계산 전에 y의 값이 0이닞 확인해야 한다. 그래서 y의 값이 0이면, 나누기를 계산할 수 없으므로 return문을 이용해서 작업을 중단하고 메서드를 빠져나와야 한다. 그렇지 않으면, 나누기를 하는 문장에서 프로그램이 비정상적으로 종료된다.

float divide(int x, int y) {
    //작업을 하기 전에 나누는 수(y)가 0인지 확인한다
    if (y == 0) {
        System.out.println("0으로 나눌 수 없습니다");
        return 0;
    }
    return x / (float) y;
}

적절하지 않은 값이 매개변수를 통해 넘어온다면 매개변수의 값을 보정하던가, 보정하는 것이 불가능하다면 return문을 사용해서 작업을 중단하고 호출한 메서드로 되돌아가야한다.

0개의 댓글