이제 클래스의 내부 구성 요소 중 두 번째인 메서드를 알아보자.
7.2.1 메서드 정의하기
메서드는 클래스의 기능에 해당하는 요소다. 예를 들어 사람 클래스라면 먹기, 잠자기, 공부하기, 자동차 클래스라면 전진하기, 후진하기, 회전하기 등이 메서드로 구성될 것이다. 먼저 메서드 정의의 문법적 구조를 살펴보자.
🍄메서드의 정의
자바 제어자 리턴(빤환) 타입 메서드명(입력매개변수) {
메서드 내용
}
예
public static int sum(int a, int b) {
// 메서드 내용
}
// public, static - 자바 제어자 int - 리턴(반환) 타입
리턴 타입은 메서드 종료 이후 변환(또는 반환)되는 값의 자료형을 의미한다. 메서드명은 변수명 선정 규칙과 동일하며 관례적으로 소문자로 시작한다. 이후 소괄호 안에는 입력 매개 변수가 들어오는데, 이는 메서드를 호출할 때 전달되는 값의 자료형과 전달받은 값을 저장할 지역 변수명을 정의한다. 마지막 중괄호 안에는 메서드의 내용이 들어가는데, 여기에 메서드가 수행해야 할 기능을 작성한다.
지금까지의 내용을 정리해 앞의 예제를 설명하면 '입력값으로 int형 2개의 값을 입력받아 처리하며, 메서드가 종료된 이후에 int값을 리턴한다.' 정도로 이야기할 수 있을 것이다. 리턴 타입이 void가 아닐 때 메서드 안에는 반드시 'return 리턴값'의 코드가 있어야 한다. 위 예제에서는 메서드 내용의 마지막에 'return 정숫값'의 코드가 반드시 있어야 오류가 발생하지 않을 것이다.