청년취업아카데미/Java

[21.01.08 Java] 메소드 오버로딩(Method Over Loading)

RSpring41 2021. 1. 8. 11:49

▶ 메소드 오버로딩(Method Over Loading)

▷ 메소드 오버로딩이란 메소드의 이름은 하나만 주고 매개변수를 다르게 함으로써 여러 개에 메소드를 만드는 것

    EX) System.out.println에서 다양한 매개변수 자료형을 입력할 수 있다.

plrintln에 적용된 모습

 

 메소드 오버로딩(Method Over Loading)메소드 오버로딩의 조건

 메소드 이름이 가아야함

 매개변수의 개수 또는 타입이 달라야함

 매개변수는 같고 리ㅓㄴ타입이 다른경우는 오버로딩이 아님

 

 메소드 오버로딩(Method Over Loading)오버로딩의 장점

 메소드 이름의 낭비방지

 같은 메소드에 여러 종류의 매개변수를 받을수 있음

 

 

 

 메소드 오버로딩 예제 (덧셈)

public class ex04 {
	public static void main(String[] args) {
		// 메소드 오버로딩은 메소드의 이름은 동일하지만 매개변수 타입, 개수를 다르게 정의

		// 2개 덧셈
		addNumberTow(2, 2);

		// 3개 덧셈
		addNumberThree(2, 3, 3);

		// 각 정수와 실수를 더하는 메소드
		addNumberIntDouble(2, 3.5);

//////////////////////////////////////메소드 오버로딩 적용 /////////////////////////////////		

		addNumber(3, 3);
		addNumber(3, 3, 3);
		addNumber(1.5, 5);
		addNumber(2.4, 1.5);

	}

	private static void addNumber(double d, double e) {
		System.out.println(d + e);
		
	}

	private static void addNumber(double d, int j) {
		System.out.println(d + j);

	}

	private static void addNumber(int i, int j, int k) {
		System.out.println(i + j + k);

	}

	private static void addNumber(int i, int j) {
		System.out.println(i + j);

	}

/////////////////////////////////////////////////////////////////////////////////////
	private static void addNumberIntDouble(int i, double d) {
		System.out.println(i + d);
	}

	private static void addNumberThree(int i, int j, int k) {
		System.out.println(i + j + k);
	}

	private static void addNumberTow(int i, int j) {
		System.out.println(i + j);

	}

}