[Java] 메소드 오버로딩
2020. 4. 14. 17:46ㆍProgramming Languages/Java
메소드 오버로딩(Method Overloading) : 한 클래스 내에서 이름이 같지만 매개변수의 타입이나 개수가 다른 여러 개의 메소드를 중복 작성하는 방법이다. 자바 특징 중 다형성의 한 경우이다. 메소드 오버로딩은 자바 컴파일러에 의해 판단되며, 컴파일러가 이름이 같은 메소드들을 구분할 수 있으면 메소드 오버로딩이 성공한다.
조건
- 메소드 이름이 동일해야 한다.
- 매개변수의 개수나 타입이 달라야 한다.
리턴 타입이나 접근 지정자는 관계없다.
성공 사례
class MethodOverloading {
public int getSum(int i, int j) {
return i + j;
}
public int getSum(int i, int j, int k) {
return i + j + k;
}
}
실패 사례
class MethodOverloading {
public int getSum(int i, int j) {
return i + j;
}
public double getSum(int i, int j) {
return i + j;
}
}
오버로딩 메소드 호출 방법
public class MethodOverloading {
public static void main(String args[]) {
MethodSample a = new MethodSample();
int i = a.getSum(1, 2);
int j = a.getSum(1, 2, 3);
double k = a.getSum(1.1, 2.2);
}
public int getSum(int i, int j) {
return i + j;
}
public int getSum(int i, int j, int k) {
return i + j + k;
}
public double getSum(double i, double j) {
return i + j;
}
'Programming Languages > Java' 카테고리의 다른 글
[Java] 상속(extends) (0) | 2020.04.21 |
---|---|
[Java] final 키워드 (0) | 2020.04.18 |
[Java] static 키워드 (0) | 2020.04.18 |
[Java] 접근 지정자 (0) | 2020.04.18 |
[Java] 객체의 소멸과 가비지 컬렉션 (0) | 2020.04.14 |