메소드 오버로딩 overloading
매개변수의 숫자에 따라서 같은 이름의, 서로 다른 메소드를 호출한다.
이름은 같지만 시그니처는 다른 메소드를 중복으로 선언 할 수 있는 방법을
메소드 오버로딩(overloading)이라고 한다.
-- 매서드 오버로딩의 조건
- 메서드의 이름이 같아야 한다.
- 매개변수의 개수 또는 타입이 달라야 한다.
- 매개변수는 같고 리턴타입이 다른 경우는 오버로딩이 성립되지 않는다.
(리턴타입은 오버로딩을 구현하는데 아무런 영향을 주지 못한다.
메소드 오버로딩 예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | public class Addressbook { public static void main(String[] args) { person("홍길동",01011111111,1212,"aa@aa"); person("홍길동",01011111111,1212); person("홍길동",0101111111); } public static void person(String name,int phoneNum,int birth,String mail) { //이름 전화번호 생일 메일을 출력하는 메소드 System.out.println("이름 : "+name); System.out.println("전화번호 : "+phoneNum); System.out.println("생일 : "+birth); System.out.println("이메일 : "+mail); } public static void person(String name,int phoneNum,int birth) { //이름 전화번호 생일을 출력하는 메소드 System.out.println("이름 : "+name); System.out.println("전화번호 : "+phoneNum); System.out.println("생일 : "+birth); } public static void person(String name,int phoneNum) { //이름 전화번호를 출력하는 메소드 System.out.println("이름 : "+name); System.out.println("전화번호 : "+phoneNum); } } | cs |