메소드 오버로딩 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


'Java' 카테고리의 다른 글

상속  (0) 2017.02.25
캡슐화  (0) 2017.02.25
접근제어자  (0) 2017.02.25
static  (0) 2017.02.25
생성자  (0) 2017.02.25

+ Recent posts