본문 바로가기
Language/java

Java_Study 객체지향 프로그래밍 (오버로딩)

by gamxong 2022. 7. 1.

오버로딩
 

 : 한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것

( 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메서드를 정의할 수 있다.)

 

 

 

오버로딩의 조건

 

1. 메서드 이름이 같아야 한다.

 

2. 매개변수의 개수 또는 타입이 달라야 한다.

 

반환 타입은 오버로딩을 구현하는데 아무런 영향을 주지 못한다.

 

 

오버로딩 사용하는 이유

 : 다른 이름을 가져야 하는 경우 해당 메서드를 일일이 구분해서 기억해야 하는 부담이 생기기 때문에

 

 

가변인자와 오버로딩

 

 : 가변인자는 내부적으로 배열을 이용하는 것.

 

ex)

static String concatenate (String delim, String ... args) {
	...
}

 

매개변수의 타입을 배열로 하면, 반드시 인자를 지정해 줘야하기 때문에, 인자 생략이 불가

댓글