[Java] 오버로딩

HyunDong Lee·2022년 8월 16일
0

Java

목록 보기
3/4
post-thumbnail

오버로딩

오버로딩은 '과적하다'라는 의미이다.

자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메소드를 정의할 수 있다.

사용하는 이유

  • 하나의 이름으로 같은 기능을 하는 메소드
  • 메소드의 이름 절약

오버로딩 조건

  • 메소드의 이름이 같고 매개변수의 개수나 타입이 달라야 한다.
  • 리턴값 만 다른 것은 오버로딩될 수 없음
  • 오버로딩은 매개변수의 차이로만 구현할 수 있다

오버로딩 예시코드

class OverloadingPractice {

	public static void main(String[] args) {
		OverloadingMethods om = new OverloadingMethods();

		om.print();
		System.out.println(om.print(3));
		om.print("Hello!");
		System.out.println(om.print(4, 5));
	}
}

class OverloadingMethods {
	public void print() {
		System.out.println("오버로딩1");
	}

	String print(Integer a) {
		System.out.println("오버로딩2");
		return a.toString();
	}

	void print(String a) {
		System.out.println("오버로딩3");
		System.out.println(a);
	}

	String print(Integer a, Integer b) {
		System.out.println("오버로딩4");
		return a.toString() + b.toString();
	}

}

//결과 화면
오버로딩1
오버로딩2
3
오버로딩3
Hello!
오버로딩4
45

0개의 댓글