메서드 오버로딩(Method Overloading)이란, 같은 이름을 갖고 있지만 서로 다른 매개변수 형식을 갖고 있는 메서드를 여러 개 정의하는 것이다. 즉, 하나의 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것이다. 여기서 'overload'의 사전적 의미는 '과적하다/ 부담을 지우다'이다. 메서드 오버로딩은 객체 지향 프로그래밍의 특징 중 하나인 다형성(polymorphism)을 구현하는 방법 중 하나이다. 오버로딩이 성립하기 위한 조건 무조건 같은 메서드명을 사용한다해서 오버로딩이 되는 것은 아니다. 다음은 오버로딩이 성립하기 위한 조건이다. 메서드의 이름이 같아야 한다. 메서드의 시그니처 즉, 매개 변수의 개수 또는 타입이 다르게 정의되어야 한다. 이 조건들 중에 하나라도 충족이 되지 ..