오버로딩 |
자바에서 오버로딩(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 |