본문 바로가기

Developer/Java-oop

#005. 메소드 중복정의 (method overloding) 알아보기...

#005. 메소드 중복정의 (method overloding) 알아보기...

 

1. 메소드 중복정의는 하나의 클래스 안에서 같은 이름의 메서드를 여러번 정의하는 것이다.

단, 매개변수가 달라야 한다. (갯수 or 타입)

oop 패키지에 OverloadDemo Class를 만들고 아래와 같이 작성해본다.

코드

package oop;

public class OverloadDemo {

    static void sum(int i, int j){

        System.out.println("int+int: " + (i+j));

    }

    static void sum(int i, double d){

        System.out.println("int+double: " + (i+d));

    }

    static void sum(double d, int i){

        System.out.println("double+int: " + (i+d));

    }

    static void sum(int i, int j, int k){

        System.out.println("int+int+int: " + (i+j+k));

    }

    public static void main(String[] args) {

        OverloadDemo od1 = new OverloadDemo();

        od1.sum(10, 15);

        od1.sum(10, 1.2);

        od1.sum(5.5, 15);

        od1.sum(1, 2, 3);

    }

}

결과

int+int: 25

int+double: 11.2

double+int: 20.5

int+int+int: 6

설명

문장17: param1=10, param2=15 둘다 정수이기 때문에, 문장3,5를 실행한다.

문장18: param1=10, param2=1.2 정수, 더블 인 문장6,8를 실행한다.

문장19: param1=5.5, param2=15 더블, 정수 인 문장9,11를 실행한다.

문장20: param1=1, param2=2, param3=3 셋다 정수이기 때문에, 문장12,14를 실행한다.

 

다음시간엔 생성자(Constructor), 생성자오버로딩(Constructor Overloding) 에 대해서 알아보자.

 

잡담. 메소드 오버로드는 설명이 참 간단해서 좋네요.. 오늘 하루도 고생했네요^^; 새벽 1:40 슝~