메소드 오버로딩
•
한 클래스 내에 같은 이름을 사용하는 메소드가 있더라도, 동일한 메소드를 정의하도록 허용하는 기술
•
오버로딩 규칙
1.
메소드의 이름이 같아야함.
2.
파라미터의 개수 또는 타입이 달라야함.
3.
파라미터가 같고, 리턴 타입이 다른 경우에는 성립하지 않음.
4.
오버로딩된 메소드는 파라미터로만 구분될 수 있다.
◦
파라미터의 타입, 개수, 순서 중에 하나 이상 달라야 한다.
•
example
public static String valueOf(Object obj) {
return (obj == null) ? "null" : obj.toString();
}
public static String valueOf(char data[]) {
return new String(data);
}
public static String valueOf(char data[], int offset, int count) {
return new String(data, offset, count);
}
public static String valueOf(boolean b) {
return b ? "true" : "false";
}
public static String valueOf(char c) {
if (COMPACT_STRINGS && StringLatin1.canEncode(c)) {
return new String(StringLatin1.toBytes(c), LATIN1);
}
return new String(StringUTF16.toBytes(c), UTF16);
}
public static String valueOf(int i) {
return Integer.toString(i);
}
public static String valueOf(long l) {
return Long.toString(l);
}
public static String valueOf(float f) {
return Float.toString(f);
}
public static String valueOf(double d) {
return Double.toString(d);
}
Java
복사