어떠한 문제를 처리하기 위한 방법을 소스 코드로 묶어놓고 필요(호출)에 따라 동작하는 기능 정도로 생각할 수 있다.
메소드 선언은 선언부(리턴 타입, 메소드 이름, 매개 변수 선언)과 실행 블록으로 구성됩니다.
$
와 _
를 제외한 특수문자를 사용하지 말아야 합니다.return
문을 사용해서 리턴값을 지정해야 합니다. return
문이 없다면 컴파일 에러가 발생하고 return
문이 실행되면 메소드가 종료됩니다.void
를 사용합니다.void
로 선언된 메소드에서도 return
문을 사용할 수 있다 이때는 리턴값을 지정해주는 것이 아니라 메소드 실행을 강제로 종료시키는 역할을 합니다.메소드는 클래스 내/외부의 호출에 의해 실행됩니다.
클래스 내부의 다른 메소드에서 호출할 경우에는 단순한 메소드 이름으로 호출하면 되지만, 클래스 외부에서 호출할 경우에는 우선 클래스로부터 객체를 생성하고 참조변수를 이용해 메소드를 호출해야합니다.
//객체내부----------------
//메소드선언
void run(){ ... }
void stop(){ ... }
void sound(){ ... }
void내부메소드(){
run();
stop();
sound();//메소드를호출!
}
//객체외부----------------
void 외부메소드(){
Car car = new Car();
car.run();
car.stop();
car.sound();
}
메소드 오버로딩이란 클래스 내에 같은 이름의 메소드를 여러 개 선언하는 것을 말한다.
메소드 오버로딩의 조건은 매개 변수의 타입, 개수, 순서 중 하나가 달라야 한다는 점이다.
메소드 오버로딩이 필요한 이유는 매개값을 다양하게 받아 처리할 수 있도록 하기 위해서입니다.