자바에서의 메서드 오버로딩(Overloading) 예제를 통해 더 자세히 살펴보겠습니다. 오버로딩은 동일한 메서드 이름을 사용하지만 매개변수의 개수, 타입 또는 순서가 다른 여러 버전의 메서드를 정의하는 것입니다.
public class Calculator {
// 정수형 두 숫자를 더하는 오버로딩된 메서드
public int add(int a, int b) {
return a + b;
}
// 실수형 두 숫자를 더하는 오버로딩된 메서드
public double add(double a, double b) {
return a + b;
}
// 세 정수를 더하는 오버로딩된 메서드
public int add(int a, int b, int c) {
return a + b + c;
}
// 문자열을 합치는 오버로딩된 메서드
public String add(String a, String b) {
return a + b;
}
}
위의 Calculator 클래스는 다양한 형태의 add 메서드를 정의하여 오버로딩을 구현한 예제입니다. 각각의 add 메서드는 다른 매개변수를 받아들이며, 메서드 이름은 동일합니다.
예제를 사용하는 코드는 다음과 같을 수 있습니다.
public class Main {
public static void main(String[] args) {
Calculator calculator = new Calculator();
int sum1 = calculator.add(5, 10); // 정수형 메서드 호출
System.out.println("Sum1: " + sum1);
double sum2 = calculator.add(3.5, 2.7); // 실수형 메서드 호출
System.out.println("Sum2: " + sum2);
int sum3 = calculator.add(2, 4, 6); // 세 정수를 더하는 메서드 호출
System.out.println("Sum3: " + sum3);
String result = calculator.add("Hello, ", "World!"); // 문자열을 합치는 메서드 호출
System.out.println("Concatenated String: " + result);
}
}
이 예제에서 메서드 이름은 모두 add이지만, 각각의 메서드는 다른 매개변수를 사용하고 서로 다른 동작을 수행합니다. 이렇게 오버로딩을 활용하면 동일한 메서드 이름을 사용하여 다양한 유형의 작업을 수행할 수 있습니다.
With ChatGPT
'JAVA > 포스팅' 카테고리의 다른 글
자바 가변인자와 오버로딩 (0) | 2023.11.08 |
---|---|
자바 오버로딩의 장점 (0) | 2023.11.08 |
자바 오버로딩의 조건 (0) | 2023.11.08 |
자바 오버로딩이란? (0) | 2023.11.08 |
자바 클래스 멤버와 인스턴스 멤버간의 참조와 호출 (0) | 2023.11.08 |