본문 바로가기

FALL in/G.MA' s 자바

오버로딩


오버로딩 

자바에서 오버로딩(overloading)은 메소드의 다중정의를 말한다. 같은이름의 메소드라도 여러개의 정의가 가능하다. 주의할점은 매개변수의 개수나 데이터타입이 달라야한다.

만약 매개변수의 개수와 그 데이터타입이 같다면 에러가난다.




public class overloadingEx 

{

String hello(String name)

{

return "hello "+ name;

}

String hello(String name,boolean capital)

{

if(capital) return "HELLO "+ name;

return "hello "+ name;

}

void hello()

{

System.out.println("hello");

}

void hello(int n)

{

for(int i=0; i<n; i++)

{

System.out.println("hello");

}

}

void Line()

{

System.out.println("-------------------------------");

}

public static void main(String args[])

{

overloadingEx h = new overloadingEx();

System.out.println(h.hello("G.ma"));

h.Line();

System.out.println(h.hello("JiYeon",true));

h.Line();

h.hello();

h.Line();

h.hello(4);

}

}

 


같은이름의 메소드를 사용했지만 넣어준 매개변수의 타입이나 개수에따라 다른 기능을 한다. 



결과 화면

hello G.ma

-------------------------------

HELLO JiYeon

-------------------------------

hello

-------------------------------

hello

hello

hello

hello 



'FALL in > G.MA' s 자바' 카테고리의 다른 글

익명내부클래스  (0) 2016.04.12
인터페이스와 다중상속  (0) 2016.04.12
추상클래스와 추상메소드  (0) 2016.04.12
오버라이딩  (0) 2016.04.12