Self-study/자바

[자바/Java] overloading

Munyoung 2023. 9. 15. 10:11

overloading: 한 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것. 

조건: 

1. 메서드 이름이 같아야함

2. 매개변수의 개수 또는 타입이 달라야 함

3. 반환 타입은 영향 없음. 

 

- 오버로딩이 아닌경우

already defined. 

int add(int a, int b){ return  a+b}
int add(int x, int y){ return x+y}
int add(int a, int b){ return  a+b}
int add(int a, int b){ return (long) a+b}

- 오버로딩인 경우, 

long add(int a, long b){ return  a+b}
long add(long a, int b){ return a+b}

하지만, a=3, b=3일 경우, ambiguous가 뜸.

'Self-study > 자바' 카테고리의 다른 글

[Java] HashMap  (0) 2024.01.02
[자바/Java] Method(메서드)/ Return / Call Stack  (0) 2023.09.15
[자바/Java] 변수(Variable)  (0) 2023.09.15
[자바/Java] 클래스와 객체  (0) 2023.09.09