메서드간의 파라미터가 서로 달라야 한다.
-> 파라미터의 데이터 타입이 다르다.
(데이터 형이 동일하고 변수의 이름이 다른경우는 동일한
파라미터로 인식된다)
-> 파라미터의 개수가 다르다
-> 서로 다른 데이터형을 갖는 파라미터들의 전달 순서가 다르다.
리턴형이 다른 경우는 오버로드의 성립에 아무런 영향을 주지 않는다.
파라미터의 개수가 서로 다르기 때문에 오버로드 성립
public void foo (int a ){ }
public void foo (int a, int b ){ }
데이터 형의 전달 순서가 서로 다르기 때문에 오버로드 성립
public void foo (int a, String b ){ }
public void foo (String a , int b ){ }
오버로드 불가
public int foo(int a ){ }
public String foo(int x ){ }