오버로딩(Overloading)
이름은 같지만 매개변수의 개수나 타입을 다르게 해서, 같은 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것을 뜻합니다.
한눈에 보는 정의
오버로딩(Overloading)은 이름은 같지만 매개변수의 개수나 타입을 다르게 해서, 같은 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것을 뜻합니다.
자세히 알아보기
- 예문: "숫자 두 개를 더하는
add(int, int)와 문자열을 이어붙이는add(String, String)을 같은 이름으로 만드는 것이 오버로딩이다." - 호출할 때 전달하는 인자의 개수나 타입에 따라 컴파일러나 인터프리터가 알맞은 메서드를 자동으로 선택해 실행합니다.
- 이름과 매개변수까지 완전히 동일하게 유지하며 동작만 다시 정의하는 오버라이딩(Overriding) (오버라이딩)과 달리, 오버로딩은 매개변수의 형태 자체를 다르게 해서 새로운 메서드를 추가하는 방식입니다.
- 비슷한 기능을 하는 메서드에 매번 다른 이름을 지어야 하는 번거로움을 줄여주고, 코드를 더 직관적으로 사용할 수 있게 해줍니다.