본문 바로가기
JAVA

메서드 오버 로딩

by 융디's 2024. 3. 31.
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