728x90
반응형
오버로딩(OverLoding) 이란?
오버로딩(Overloading)은 객체 지향 프로그래밍 언어에서 메서드의 이름은 같지만 매개변수의 개수 또는 데이터 유형이 다른 여러 버전을 정의하는 개념을 나타냅니다. 이것은 메서드의 다형성을 구현하는 하나의 방법입니다. 오버로딩을 사용하면 동일한 메서드 이름을 사용하여 다양한 상황에 대처할 수 있으며, 코드의 가독성을 향상시키고 개발자가 더 직관적으로 프로그램을 작성할 수 있게 해줍니다.
오버로딩에 대한 주요 특징과 규칙
- 메서드 이름은 같아야 합니다.
- 메서드의 매개변수 목록이나 데이터 유형은 서로 달라야 합니다.
- 반환 유형은 오버로딩에 영향을 주지 않습니다. 메서드 이름과 매개변수만 고려됩니다.
- 오버로딩된 메서드들은 동일한 클래스 내에 있어야 합니다.
예제코드로 살펴봅시다
class Calculator {
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
}
public class OverLoadingTest
{
public static void main(String[] args)
{
Calculator calc = new Calculator();
int add1 = calc.add(8,9);
double add2 = calc.add(4.5, 5.5);
System.out.println("add1 = " + add1);
System.out.println("add2 = " + add2);
}
}
위의 예제 에서, Calculator 클래스는 add 메서드를 오버로딩하고 있습니다. 첫 번째 메서드는 두 개의 정수를 더하고, 두 번째 메서드는 두 개의 double을 더합니다. 이러한 오버로딩된 메서드는 동일한 이름을 가지지만 매개변수의 개수와 데이터 유형에 따라 호출됩니다.
오버로딩은 자바와 같은 많은 객체 지향 프로그래밍 언어에서 지원되며, 다양한 상황에서 유연하게 메서드를 활용할 수 있게 도와줍니다.
728x90
반응형