728x90
오버로딩이란?
메서드도 변수처럼 클래스 내에서 구별될 수 있어야하기 때문에 각기 다른 이름을 가져야 하지만, 클래스 내에서 같은 이름을 가진 메서드가 있더라도 매개변수의 개수 혹은 타입이 다르면 같은 이름을 사용해서 메서드 정의가 가능하다.
이렇게 한 클래스 내에 같은 이름의 메서드를 여러개 정의하는 것을 '메서드 오버로딩'이라고 한다.
오버로딩의 조건
1. 메서드 이름이 동일해야 한다.
2. 매개변수의 개수 또는 타입이 달라야 한다.
- 오버로딩된 메서드들은 매개변수에 의해서만 구별되며, 반환타입은 오버로딩 구현에 아무런 영향을 주지 않는다.
오버로딩된 같은 이름의 메서드로 모두 오류 없이 잘 동작하는 것을 알 수 있다.
이처럼 오버로딩을 사용하면, 다른 타입의 매개변수를 사용해도 동일한 효과를 가지는 동일한 이름의 메서드를 만들 수 있다는 점에서 큰 장점이 있다.
가변인자(varargs)와 오버로딩
728x90