변수와 배열이 무언가를 담는 역할을 한다면, 메서드는 어떤 기능을 실행해 주는 무언가입니다.
이 메서드가 무엇인지 함께 알아보도록 하겠습니다.
앞에서 언급한 대로 변수가 데이터를 담는 무언가 라면 메서드는 동작을 실행해 주는 무언가입니다.
메서드는 메서드이름, 매개변수, 반환타입으로 구성됩니다.
토스트기를 예로 들어보겠습니다.
토스트기는 ‘토스트기’라는 이름을 가지고 있습니다.(메서드이름)
그리고 빵 형태를 안에 집어넣어야 동작이 되죠?(매개변수)
빵을 집어넣으면 빵이 구워집니다.(실행문)
빵이 다 구워지면, 구워지긴 했지만 어쨌든 빵의 형태로 밖으로 나오게 됩니다.(반환타입)
하지만 메서드의 구성 요소를 꼭 모두 가지고 있는 것은 아닙니다.
상황에 따라서 모두 가지고 있거나 모두 가지고 있지 않은 경우도 있습니다.
위에 나열된 물건들을 보면서 각요소들에 대해서 하나씩 살펴볼까요?
번호표기계(메서드 이름)의 경우 안으로 넣는 무언가는 없고 버튼을 누르면 밖으로 나오는 종이(반환)만 있습니다.
저금통(메서드 이름)은 안에 동전을 넣을 수 있지만(매개변수) 밖으로 나오는 것은 없습니다.
호출벨(메서드 이름)은 버튼을 눌렀을 때 호출하는 기능만 있을 뿐 이때 안에 무엇을 넣거나 밖으로 나오는 건 없습니다.
이렇게 무언가를 해 주는 기능은 다른 언어에서는 함수(function)라고 부릅니다.
그런데 JAVA에서는 왜 method라고 부르는 것일까요?
이것은 뒤에서 클래스에서 따로 다루겠지만, 함수는 블랙박스의 개념으로 한번 만들면 그대로 사용해야만 하는 개념입니다.
메서드는 방법론, 즉 일정한 절차와 격식만 갖춘다면 유연하게 변경할 수 있는 개념입니다.
일단은 이 정도로만 이해하시면 될 것 같습니다.