참고: 김영한의 자바 입문 강의 공부 내용
오버로딩(Overloding)이란?
이름이 같고 매개변수가 다른 메서드를 여러개 정의하는 것을 메서드 오버로딩(Overloding)이라고 한다.
오버로딩 규칙
메서드 이름이 같아도 매개변수의 타입 및 순서가 다르면 오버로딩을 할 수 있다. (반환 타입은 인정 X)
오버로딩 예시
add(int a, int b)
add(int a, int b, int c)
add(double a, double b)
오버로딩 실패 케이스 - 반환 타입만 다르게 명시
int add(int a, int b)
double add(int a, int b)
오버로딩 실패 케이스 - 매개변수 타입 및 순서 동일
int add(int a, int b)
int add(int c, int d)
메서드 시그니처(method signature)
`메서드 시그니처 = 메서드 이름 + 매개변수 타입(순서 포함)`
메서드 시그니처는 자바에서 메서드를 구분할 수 있는 고유한 식별자 또는 서명을 의미한다. 메서드 시그니처는 메서드 이름과 매개변수 타입(순서 포함)으로 구성되어 있으며, 이를 통해서 메서드를 구분할 수 있다. 메서드 반환 타입은 메서드 시그니처에 포함되지 않기 때문에 메서드 이름과 매개변수 타입 및 순서는 같은데 반환 타입이 다른 경우, 이는 메서드 구분이 불가능하기 때문에 컴파일 오류가 발생한다.
'프로그래밍 언어 > Java' 카테고리의 다른 글
[Java] 기본형 & 참조형 (0) | 2024.08.23 |
---|---|
[Java] 배열 생성 방법 (0) | 2024.08.16 |
[Java] 형변환과 오버플로우, 계산시 형변환 (0) | 2024.08.13 |
[Java] 스코프(Scope) (0) | 2024.08.13 |
[Java] 문자열 비교 (equals) (0) | 2024.08.09 |