JAVA

오버로드 (Overload)

김T준 2021. 7. 18. 18:57
728x90

한 클래스 내에서 같은 이름의 메소드를 시그니쳐만 다르게 해서 여러 개 정의하는 것을 오버로드 또는 오버로딩 이라고 한다.

 

오버로딩의 조건 :

  • 메소드의 이름이 같아야 한다
  • 메소드의 반환타입이 같아야 한다
  • 매개변수의 메소드 시그니쳐가 달라야 한다.
    ※파라미터의 개수, 순서, 타입이 다르면 다른 메소드로 취급되는데,
       이
     개수, 순서, 타입'메소드 시그니쳐'라고 한다.

※ 메소드를 호출할 때 메소드명과 시그니쳐까지 같다면 같은 메소드로 인식하여 에러가 발생한다.

 

ex)

public void overLoad(){
}
public void overLoad(int i){
}
public void overLoad(String i){
}
public void overLoad(int i, String str){
}
public void overLoad(String str, int i){
}