본문 바로가기
JAVA

JAVA 메소드 오버로딩(overloading)이란?

by 자바비터 2022. 3. 3.

오버로딩이란?

: 하나의 클래스 내부에 같은 이름의 메소드 정의하는 것을 말한다. (=메소드 이름이 같음)

 

오버로딩 정의 원칙

: 매개변수 형식을 다르게 하여 정의해야 한다.

(1) 매개변수 타입을 다르게 한다.

(2) 매개변수 개수를 다르게 한다.

(3) 매개변수 순서를 다르게 한다.

 

생성자 오버로딩 예제
package kh1220;

public class Ex07 {
	String title;
	String author;
	//본 예제에서는 위 아래 생성자의 매개변수 수가 다른 오버로딩
	//위의 경우 작자 미상일 경우 활용하고
	public Ex07(String t) {
		title = t;
		author = "작자미상";
	}
	//아래 생성자는 작자를 알 때 활용
	public Ex07(String t, String a) {
		title = t;
		author = a;
	}
	public static void main(String[] args) {
		//두 클래스 모두 객체를 생성.
		//매개변수 개수로 생성자를 구분한다.
		Ex07 littlePrince = new Ex07("어린왕자", "생택쥐페리");
		Ex07 loveStory = new Ex07("춘향전");
		System.out.println(littlePrince.title + " " + littlePrince.author);
		System.out.println(loveStory.title + " " + loveStory.author);
	}
}

오버로딩 실행 결과 화면

 

 

 

 

 

댓글