본문 바로가기
Java

메서드(method)

by 우 석 2024. 1. 4.

1. 메서드(method)

자바를 포함한 객체 지향 프로그래밍 언어에서 클래스 내부에서 정의된 함수 (객체의 함수)를 메서드라고 합니다. 또한 객체의 행위를 뜻하며 객체 간의 협력을 위해 사용합니다.

 

 

2. 메서드 선언 방법

리턴타입, 매서드 이름, 매개변수를 작성하고 중괄호 안에 원하는 목적의 코드를 작성합니다.

리턴타입 메서드명(매개변수, ...) {
    실행할 코드 작성
}

 

 

3. 리턴타입

메서드가 실행된 후 호출을 한 곳으로 값을 반환할 때 해당 값의 타입을 의미합니다.

반환할 값이 없을 때는 리턴타입에 void를 작성해야 합니다.

double brakePedal() {...} // double 타입 반환
char changeGear(char type) {...} // char 타입 반환
boolean onOffLights() {...} // boolean 타입 반환
void horn() {...} // 반환할 값 없음

 

 

4. 매개변수

매개변수는 메서드를 호출할 때 메서드로 전달하려는 값을 받기 위해 사용되는 변수입니다.
아래 gasPedal(double kmh, char type) 메서드의 매개변수는 double 타입의 kmh, char 타입의 type입니다.
해당 매개변수에 값을 전달하기 위해서는 순서와 타입에 맞춰 값을 넣어주면 됩니다.

전달하려는 값이 없다면 매개변수의 생략 가능합니다.

double gasPedal(double kmh, char type) {
    speed = kmh;
    return speed;
}

 

 

5. 매서드 오버로딩 ( Method Overloading)

오버로딩은 함수가 하나의 기능만을 구현하는 것이 아니라 하나의 메서드 이름으로 여러 기능을 구현하도록 하는 Java의 기능입니다. 즉, 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라도, 매개변수의 개수 또는 타입, 순서가 다르면 동일한 이름을 사용해서 메서드를 정의할 수 있습니다.

결론으로 메서드 이름 하나로 상황에 따른 동작을 개별로 정의할 수 있어 메서드의 이름을 절약할 수 있습니다

public void println(boolean x) {
}
public void println(char x) {
}
public void println(int x) {
}

 

'Java' 카테고리의 다른 글

상속 (Inheritance)  (0) 2024.01.09
접근 제어자 (Access Modifier), Getter, Setter  (0) 2024.01.08
List  (0) 2024.01.05
객체지향 프로그래밍  (2) 2024.01.03
자료구조(Data Structure) - Java  (1) 2024.01.02