이전 걸음에서 메소드에 형태에 대해서 배웠습니다. 우선 메소드를 이해를 하기 쉽게 1. 주고 받고 2. 주고 안 받고 3. 안주고 받고 4. 안주고 안 받고 형태를 배웠지만 일반적인 내용의 설명을 했습니다. 그럼 메소드를 왜 사용해야 하고 여러 가지 알아야 될 사항이 존재를 하기 때문에 그 부분을 이해를 할 수 있도록 설명을 해야 합니다. 또한 이전 걸음의 내용을 직접 소스로 설명을 하는 부분이 있어야 이해에 도움이 될 수 있어서 공부에 도움이 되실 수 있습니다.
메소드의 형태를 소스에 적용해서 설명을 하고 메소드의 기본적인 이해를 해야 하는 내용을 이 글을 통해서 이해를 하고 사용을 하신다면 메소드를 좀 더 잘 활용을 하실 수 있습니다. 또한 전반적인 내용을 이해를 한다면 왜 사용되는지 알면서 사용의 목적이 더욱더 명확 해질 수 있습니다.
이 글에서는 메소드 4가지 형태를 소스로 직접 알아보고 메소드의 매개변수와 리턴에 대해서 설명을 하겠습니다. 이 글을 끝까지 읽으신다면 4가지 형태를 좀 더 심도 있게 이해를 할 수 있고 또한 메소드에 대한 전반적인 지식이 향상이 되실 수 있습니다.
메소드의 매개변수
메소드의 매개변수는 개수의 제한이 없습니다. 한마디로 원하는 개수만큼 정의를 해주시면 됩니다. 100개이든 1000개이든 상관이 없습니다. 하지만 너무 많은 매개변수를 정의를 하면 메소드를 호출을 하는 경우 불편함을 느낄 수 있기 때문에 적당한 매개변수의 사용을 해야 합니다.
메소드 리턴
메소드에서 return을 하는 경우 즉 주고 일 때 하나의 값을 return을 하는 것이 아니라 하나의 자료형을 return을 한다고 이해를 하셔야 합니다. 일반적으로 공부를 할 때 하나의 값을 return을 하는 경우가 많다 보니 하나의 값만 return이 되는 줄 알지만 하나의 값 이상인 배열도 return을 할 수 있기 때문에 하나의 값이 아닌 하나의 자료형으로 생각을 하셔야 메소드를 사용에 중요한 내용입니다.
메소드 예제
//1. 주고 받고
static String abc(String name){
return "안녕하세요"+name+"님";
}
//2. 주고 안받고
static int sum(){
int a = 10;
int b = 20;
return a+b;
}
//3. 안주고 받고
static void outputName(String name){
System.out.println("안녕하세요"+name+"님");
}
//4. 안주고 안받고
static void printBye(){
System.out.println("바이~~~~~~~");
}
public static void main(String[] args) {
//1. 주고 받고
String str = printHello("홍길동");
System.out.println(str);
//2. 주고 안받고
int result = sum();
System.out.println(result);
//3. 안주고 받고
outputName("강아지");
//4. 안주고 안받고
printBye();
}