해당 글은 '자바의 정석 기초편'을 보고 작성되었습니다.
메서드도 변수와 마찬가지로 같은 클래스 내에서 서로 구별될 수 있어야 하기 때문에 각기 다른 이름을 가져야 하지만!!! 자바에서는 한 클래스에서 매개변수의 개수 또는 타입이 다르면 동일한 이름이라도 그 이름으로 메서드를 가질 수 있다.
이렇게 한 클래스 내에 같은 이름의 메서드를 여러개 정의하는 것을 오버로딩(overloading)이라고 한다
하지만, 같은 이름이라고 무조건 오버로딩은 아니다. 오버로딩은 아래 조건들을 만족해야한다.
int add(int a, int b) { return a+b; }
int add(int x, int y) { return x+y; }
int add(int a, int b) { return a+b; }
long add(int a, int b) { return (long) a+b; }
long add(int a, long b) { return a+b; }
long add(long a, int b) { return a+b; }