728x90
반응형
오버로딩 (overloading)
: 한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것. (메서드 오버로딩)
오버로딩의 조건1. 메서드 이름이 같아야 한다.
2. 매개변수의 개수 또는 타입이 달라야 한다.※ 반환 타입(리턴 타입)은 오버로딩을 구현하는데 아무런 영향을 주지 못한다.
오버로딩이 아닌 예시
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;
}
long add(int a, int b){
return (long)(a+b);
}
// 리턴타입만 다른경우도 오버로딩이 성립하지 못한다.
오버로딩 예시
long add(int a, long b){
return a+b;
}
long add(long a, int a){
return a+b;
}
//매개변수의 순서가 다르기 때문에 오버로딩이 성립된다.
오버로딩의 장점
같은 일을 하는 메서드에 매개변수만 달리하면 되기때문에 기억하기 쉽고, 오류를 줄일 수 있다.
메서드의 이름을 절약할 수 있다.
더보기
출처, 자바의정석
728x90
반응형
'Programming > Java' 카테고리의 다른 글
[Java] 아스키코드 (0) | 2021.03.07 |
---|---|
[Java] 생성자 (0) | 2021.03.06 |
[Java] indexOf 문자열에서 문자 찾기 (0) | 2021.03.06 |
[Java] Scanner로 char 입력하기 / charAt(i); (0) | 2021.03.05 |
[Java] 클래스 메서드와 인스턴스 메서드 (0) | 2021.03.05 |
댓글