JAVA/포스팅

자바 메서드 리턴 타입 (Return Type)

짜집퍼박사(짜박) 2023. 11. 7. 00:25

자바 메서드의 리턴 타입 (Return Type)은 메서드가 호출된 후에 반환하는 값의 데이터 타입을 나타내며, 메서드가 어떤 종류의 데이터를 반환하는지를 정의합니다. 메서드 정의 시에 메서드 이름과 매개변수 목록 다음에 리턴 타입을 지정합니다. 

 

1. 리턴 타입의 역할

메서드의 리턴 타입은 메서드가 어떤 종류의 데이터를 반환하는지를 정의하며, 호출자에게 반환되는 값을 설명합니다. 메서드가 값을 반환하지 않는 경우에는 리턴 타입으로 void를 사용합니다.

public int calculateSum() {
    // int 타입의 값을 반환
    return 10 + 20;
}

public void printMessage() {
    // 아무 값도 반환하지 않음 (리턴 타입이 void)
    System.out.println("Hello, World!");
}

 

2. 데이터 타입 선택

리턴 타입은 다양한 데이터 타입 중 하나를 선택할 수 있습니다. 예를 들어, int, double, String, 사용자 정의 클래스 등 다양한 데이터 타입을 리턴할 수 있습니다.

public int calculateSum() {
    // int 타입의 값을 반환
    return 10 + 20;
}

public String getGreeting() {
    // 문자열(String) 값을 반환
    return "Hello, World!";
}

 

3. void 리턴 타입

만약 메서드가 값을 반환하지 않는다면, 리턴 타입으로 void를 사용합니다. void 리턴 타입을 가진 메서드는 단순히 작업을 수행하고 값을 반환하지 않습니다.

public void printMessage() {
    // 아무 값도 반환하지 않음 (리턴 타입이 void)
    System.out.println("Hello, World!");
}

 

4. 메서드의 반환 값

메서드 내에서 return 키워드를 사용하여 해당 메서드의 리턴 타입에 맞는 값을 반환합니다. return 키워드를 사용하면 메서드의 실행이 중지되고 해당 값이 호출자에게 반환됩니다.

public int calculateSum() {
    int result = 10 + 20;
    return result; // 30을 반환
}

 

5. 메서드 오버로딩

리턴 타입은 메서드 오버로딩(Overloading)의 일부가 아니므로, 메서드 오버로딩 시 메서드 시그니처는 매개변수 목록과 메서드 이름만을 고려합니다. 따라서 리턴 타입이 다른 메서드를 동일한 이름으로 정의할 수 없습니다.

// 유효한 메서드 오버로딩
public int add(int a, int b) { /* ... */ }
public double add(double a, double b) { /* ... */ }

// 유효하지 않음: 리턴 타입만 다른 경우
// public int add(int a, int b) { /* ... */ }
// public void add(int a, int b) { /* ... */ }

 

메서드의 리턴 타입은 메서드가 어떤 종류의 데이터를 반환하는지를 정의하며, 이것은 메서드 호출자에게 중요한 정보를 제공합니다. 메서드의 리턴 타입은 메서드의 기능을 이해하고 데이터의 유형을 예측하는 데 도움을 줍니다.

 

With ChatGPT