막상 정리하려고 보니 앞서 했던 내용도 많이 겹치고, 그냥 자연스럽게 잘 쓰고 있었던.. 그런 내용들이다!
메소드란 객체의 동작에 해당하는 중괄호 { } 블록이다. 메소드의 이름을 가지고 메소드를 호출하게 되며, 호출 시 블록 내의 모든 코드들이 일괄적으로 실행된다.
메소드 = 선언부 + 실행블록
returnType methodName (value1, value2, ...) { ~실행 블록 ~ }
메소드는 선언부와 실행블록으로 이루어져 있다.
선언부는 리턴 타입, 메소드 이름, 매개변수로 이루어져 있다.
void를 입력해준다.메소드 선언 시 리턴값이 있는 메소드는 반드시 return문을 사용해 리턴값을 지정해야 한다. return문이 실행되면 메소드는 즉시 종료된다.
위에서 리턴값이 존재하지 않을 경우 리턴 타입이 오는 자리에 void를 입력한다고 했다. 그러나 리턴값이 없는 메소드도 return문을 사용할 수 있다. 메소드 실행을 강제 종료시키는 것이다.
메소드(매개값1, 매개값2, ...);참조변수.메소드(매개값1, 매개값2, ...);메소드의 이름은 같으나 매개변수의 타입, 개수, 순서 중 하나 이상이 다른 메소드를 말한다.
리턴 타입만 다르고 매개변수가 동일한 경우는 오버로딩이 아니다. 리턴 타입은 자바 가상 기계가 메소드를 선택할 때 아무런 도움을 주지 못하기 때문이다.