( 데이터 타입이 다르거나, 매개변수의 개수가 다르거나, 매개변수의 순서가 다른경우)
함수 오버로딩(Function 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;
}
}