메소드는 어떠한 특정 작업을 수행하기 위한 명령문의 집합이다.
메소드 선언은 선언부(리턴타입, 메소드이름, 매개변수선언)와 실행 블록으로 구성된다.
메소드 선언부를 시그너처(signature
)라고도 한다.
접근제어자 리턴타입 메소드이름(매개변수목록) { //선언부
//구현부
}
메소드 이름은 자바 식별자 규칙에 맞게 작성되며, 다음 사항에 주의하자!
- 숫자로 시작하면 안되며,
$
와_
를 제외한 특수 문자를 사용하지 말아야 한다.- 관례적으로 메소드명은 소문자로 작성한다.
- 서로 다른 단어가 혼합된 이름이라면 뒤이어 오는 단어의 첫 글자는 대문자로 작성한다.
void run() { ... }
void startEngine() { ... }
String getName() { ... }
int[] getScores() { ... }
메소드는 클래스 내/외부의 호출에 의해 실행된다.
메소드(매개값, ...);
클래스 참조변수 = new 클래스(매개값, ...);
참조변수.메소드(매개값, ...); //리턴값이 없거나, 있어도 리턴값 받지 않는 경우
타입 변수 = 참조변수.메소드(매개값, ...); //리턴값이 있고, 리턴값을 받고 싶은 경우
Car myCar = new Car(); //객체 생성
myCar.keyTurnOn();
myCar.run();
int speed = myCar.getSpeed();
메소드 오버로딩이란 클래스 내에 같은 이름의 메소드를 여러 개 선언하는 것을 말한다.