728x90
메서드 오버 로딩
@2024.03.20
오버 로딩
💡
한 클래스에 이름이 동일한 메서드를 사용할 수 있게 해주는 것
- 메서드 명은 동일하되, 매개변수의 유형 또는 개수, 순서가 달라야 한다!
- 같은 기능을 하는 메서드들을 하나의 이름으로 그룹화가 가능해진다.
→ 코드의 가독성을 높이고, 유지 보수를 용이하게 한다.
- 대표적으로 println() 메서드를 생각해 볼 수 있다.
- 예시
public int add (int a, int b) { return a+b; } public double add (double a, double b){ return a+b; }
- 리턴 타입만 다른 것은 메서드 오버 로딩이 아니다!
- 메서드 오버 로딩은 시그니처가 달라야 함! ⇒ 메서드의 이름과 매개변수의 타입, 순서, 개수
- 만약 리턴 타입만으로 메서드를 구분한다면, 같은 이름과 매개변수를 가진 메서드가
여러 개 정의된 경우 어떤 메서드를 호출해야 할지 판단할 수 없게 된다.
public int add (int a, int b) { return a+b; } public double add (int a, int b) { // 컴파일 에러 -> 메서드 오버로딩이라고 판단X return (double)a+b; }
728x90
'JAVA' 카테고리의 다른 글
상속 (0) | 2024.03.31 |
---|---|
객체지향 프로그래밍 (0) | 2024.03.31 |
클래스 (0) | 2024.03.31 |
네이밍 컨벤션 (0) | 2024.03.31 |
Call by Value vs Call by Reference (0) | 2024.03.31 |