728x90
특정 작업을 수행하는 일련의 명령문들의 집합
메서드는 클래스의 기능에 해당하는 내용들을 담당한다.
크게 머리에 해당하는 메서드 시그니처(method signature)와 몸통에 해당하는 메서드 바디(method body)로 구분된다.
기본적인 구조는 다음과 같다
자바제어자 반환타입 메서드명(매개 변수) { // 메서드 시그니처
메서드 내용 // 메서드 바디
}
- 반환 타입 : 메서드가 어떤 타입을 반환하는 가
- 메서드명 : 매서드 이름
- 매개 변수 : 해당 작업을 수행하기 위한 재료에 대한 정보
public static int add(int x, int y) { // 메서드 시그니처
int result = x + y; // 메서드 바디
return result;
}
메서드의 반환 타입이 void가 아닌 경우에는 반드시 메서드 바디안에 return 문이 존재하여야 한다.
- 반환 타입이 void인 메서드
void printHello() {
System.out.println("hello!");
}
- 매개변수가 없는 메서드
int getSeven() {
return 7;
}
- 매개변수가 있는 메서드
Double multiply(int x, double y) {
double result = x * y;
return result;
}
메서드는 return을 만나면 즉시 메서드를 빠져 나간다.
public class Main {
public static void main(String[] args) {
getSeven(7);
}
static int getSeven(int i) {
if (i == 7) {
System.out.println("it is 7");
return 7;
}
System.out.println("it is not 7");
return i;
}
}
// it is 7
// return문을 만나 아래에 있는 문장은 실행되지 않고 즉시 종료되었다.
void인 경우에도 return을 쓸 수 있다
단, return; 만 써야 한다.
public class Main {
public static void main(String[] args) {
getSeven(7);
}
static void getSeven(int i) {
if (i == 7) {
System.out.println("it is 7");
return;
}
System.out.println("it is not 7");
}
}
// it is 7
// return 문을 만나 즉시 빠져나갔다
728x90
'개발일지 > Java' 카테고리의 다른 글
Java 생성자(Constructor) (0) | 2022.09.08 |
---|---|
Java 메서드 오버로딩(Method Overloading) (0) | 2022.09.08 |
Java 필드(Field) (0) | 2022.09.08 |
Java 클래스(Class)와 객체(Object) (0) | 2022.09.08 |
Java 반복문 while, do-while, for, for-each, (0) | 2022.09.08 |