[java] 오버로딩 규칙
자바에서는 메소드 오버로딩을 지원합니다. 메소드 오버로딩은 같은 이름의 메소드가 서로 다른 매개변수를 가질 수 있도록 하는 기능입니다. 이를 통해 메서드의 이름을 기억하기 쉽고 유지보수가 용이해집니다. 그러나 메소드 오버로딩에는 몇 가지 규칙이 있습니다.
1. 메소드 시그니처
메소드의 시그니처는 메소드 이름과 매개변수의 타입, 순서로 구성됩니다. 반환 타입은 시그니처에 포함되지 않습니다.
2. 오버로딩 규칙
자바는 메소드 오버로딩 시 다음 규칙을 따릅니다:
- 매개변수의 타입에 의해서만 메소드를 구별합니다. 매개변수 이름이나 반환 타입만으로는 오버로딩을 구별할 수 없습니다.
3. 예시
아래는 메소드 오버로딩의 예시입니다.
public class Calculator {
public int add(int num1, int num2) {
return num1 + num2;
}
public double add(double num1, double num2) {
return num1 + num2;
}
}
위 예시에서 add
메소드는 두 개의 오버로딩된 버전을 가지고 있습니다. 첫 번째는 int
타입의 매개변수를, 두 번째는 double
타입의 매개변수를 받습니다.
메소드 오버로딩을 사용할 때에는 매개변수의 타입, 순서, 개수를 잘 고려하여야 합니다. 경우에 따라 혼란을 줄 수 있기 때문에 신중히 사용해야 합니다.
자바에서 오버로딩을 올바르게 활용하면 코드의 가독성과 유지보수성을 높일 수 있습니다.
참고 자료
이상으로 자바에서의 오버로딩 규칙에 대해 알아보았습니다.