메서드는 다음과 같이 정의한다.
public static int add(int a, int b) {
// 메서드 본문, 실행 코드
}
제어자 반환타입 메서드이름(매개변수 목록) {
메서드 본문
}
public
, static
과 같은 부분이다.void
를 사용해야 한다.void print(String str)
add()
{}
) 사이에 코드를 작성한다.package method;
public class Method2 {
public static void main(String[] args) {
printHeader();
System.out.println("프로그램이 동작합니다.");
printFooter();
}
public static void printHeader() {
System.out.println("= 프로그램을 시작합니다 =");
return; // void의 경우 생략 가능
}
public static void printFooter() {
System.out.println("= 프로그램을 종료합니다 =");
return;
}
}
printHeader()
, printFooter()
메서드는 매개변수가 없고, 반환 타입도 없다.
public static void printHeader()
와 같이 매개변수를 비워두고 정의하면 된다.printHeader();
와 같이 인수를 비워두고 호출하면 된다.public static void printHeader()
와 같이 반환 타입을 void
로 정의하면 된다.printHeader();
와 같이 반환 타입이 없으므로 메서드만 호출하고 반환 값을 받지 않으면 된다.String str = printHeader();
→ 반환타입이 void
이기 때문에 이렇게 반환 값을 받으면 컴파일 오류가 발생한다.모든 메서드는 항상 return
을 호출해야 한다. 그런데 반환 타입 void
의 경우에는 예외로 printFooter()
와 같이 생략해도 된다. 자바가 반환 타입이 없는 경우에는 return
을 마지막 줄에 넣어준다. 참고로 return
을 만나면 해당 메서드는 종료된다.