🦈 자바 메서드 정리 🦈
반복적인 구문을 묶어 입력값에 대한 출력값을 반환하기 위해 선언하는 것이다.
int a;
int b;
int c;
System.out.println(a + b);
System.out.println(b + c);
System.out.println(a + c);
메서드를 사용하지 않을 경우, 두 값을 더한 결과를 출력하기 위해 반복적으로 구문을 사용해야 한다.
int sum(int a, int b) {
return a + b;
} // 두 수의 덧셈 결과 반환
void printSum(int a, int b) {
System.out.println(sum(a, b));
} // 두 수를 입력받아 두 수의 덧셈 결과를 출력
메서드를 사용할 경우 반복적인 구문을 하나의 메서드로 줄일 수 있다.
또, 메서드의 이름을 통해 해당 메서드의 기능을 나타낼 수 있다.
메서드를 사용할 때에는 하나의 메서드가 하나의 기능만을 담당하도록 구현하는 것이 재사용성과 유지보수에 좋다. 그렇지 않을 경우 리팩토링을 통해 메서드를 분리해야 한다.
전역 변수가 아닌 메서드 내에서 사용하는 변수는 해당 메서드 내에서만 사용됨으로 다른 메서드의 변수와 충돌하지 않는다. 다만, 변수의 이름을 통해 해당 변수가 어떤 것인지 나타내는 것이 좋다.
메서드의 구조는 크게 4가지이다.
<return_type> <method_name> (<input_type> <input_name>, ...) {
...code
return <return_value>;
}
return_type : 반환할 값의 자료형, return_value의 자료형과 일치해야 한다.method_name : 메서드명input_type : 입력 매개변수의 자료형input_name : 입력 매개변수의 이름return_value : 반환할 값매개변수는 여러개로 선언해 사용할 수 있으나, 최대 2개까지만 받아와 계산 결과를 반환하도록 구현하는 것이 좋다.
이때 return_type이 void라면 반환값이 존재하지 않음을 의미함으로 값을 반환하지 않아도 된다. 또, void를 반환값으로 가질 때 return;로 메서드를 종료할 수 있다.
parameters, 메서드에 전달된 입력값을 저장하는 변수이다.
void make붕어빵(String content) {
System.out.println(content + "를 만들고 있습니다.");
}
위 메서드에서는 content가 매개변수이며, String은 매개변수의 자료형이다.
arguments, 메서드를 호출할 때 전달하는 입력값이다.
void make붕어빵(String content) {
System.out.println(content + "를 만들고 있습니다.");
}
make붕어빵("팥 붕어빵");
위에서 메서드를 호출할 때 전달한 "팥 붕어빵"이 전달인자이다.