오버로딩이란?

한 클래스에 같은 이름의 메서드를 여러 개 정의 하는 것.

 

오버로딩의 조건 및 특징

메서드 이름이 같으면서 매개변수의 개수나 타입이 달라야 오버로딩이 성립이 된다.

리턴타입은 오버로딩이 성립하는데 아무 영향도 없다. 오로지 매개변수에 의해서만 구분된다.

 

오버로딩은 어떤 경우에 사용하는가?

하나의 이름으로 여러 개의 기능을 사용하고자 할 때 사용한다.

 

오버로딩을 사용함으로써 생기는 장점

메서드 이름을 절약할 수 있다.

메서드 이름을 짧게 지을 수 있고 하나의 이름만 사용하기 때문에 기억하기도 쉽고

메서드 이름만 보고도 메서드들의 역할을 한눈에 알 수 있다.

또 오버로딩을 정의해 놓으면 하나의 이름으로만 실행하면 되므로 사용하기에도 간편하다.

예를 들어 오버로딩이 없다면 printboolean(Boolean x), printChar(char x) 이런식으로 따로

선언해주고 사용하는 매개변수에 따라 각 따로 불러줘야 하지만 오버로딩이 있으므로 인해

println이라는 이름 하나만 불러주면 자동으로 매개변수에 맞는 메서드가 실행되므로 아주

간편하다.

 

오버로딩 사용 방법

void println()
void println(boolean x)
void println(char x)
void println(char[] x)
void println(double x)
void println(float x)
void println(int x)
void println(long x)
void println(Object x)
void println(String x)

이런식으로 선언해주고 println(“이런식으로”); 사용해주면 된다.

Posted by 윤연식
,