1. 오버 로딩
- 한 클래스 내에서 같은 이름을 가진 2개 이상의 메서드를 아래의 조건이 만족한다면, 정의할 수 있다.
(1) 메서드 이름이 같아야 한다.
( 단, 반환 타입은 달라도 괜찮다. )
(2) 매개변수의 개수 또는 매개변수의 타입이 달라야 한다.
( 또는 이라는 말은 둘 중 하나의 조건만 맞다면, 오버로딩을 적용할 수 있다는 것이다. )
2. 잘못된 예제(1)
( 매개변수의 이름이 다르더라도 갯수가 똑같기 때문에 에러가 발생한다. )
3. 잘못된 예제(2)
( 위의 반환 타입 int와 long은 오버 로딩에 아무런 영향을 주지 않기 때문에, 오버 로딩을 할 때
오직 매개변수에만 고려해야 한다. )
4. 올바른 예제(1)
( 이렇게 매개변수에 개수를 다르게 함으로써 오버로딩을 가능케 한다. )
5. 올바른 예제(2)
( 또한 매개변수의 타입을 다르게 함으로써 오버로딩을 가능케 한다. )
6. 올바른 오버 로딩을 함으로써 얻을 수 있는 기대 효과
- 메서드의 이름을 절약할 수 있다.
- 프로그래머에게 여러 가지 기능을 복잡하지 않게 하나의 기능으로 정의할 수 있어서 좋다.
'자바 > 기본적인 개념' 카테고리의 다른 글
생성자 (0) | 2021.01.07 |
---|---|
가변 인자(varargs) (0) | 2021.01.07 |
클래스 맴버와 인스턴스 맴버간의 참조와 호출 (0) | 2021.01.07 |
클래스 메서드(static 메서드)와 인스턴스 메서드 (0) | 2021.01.07 |
기본형 매개변수와 참조형 매개변수 (0) | 2021.01.07 |