자바
자바 메소드 오버로딩 (method overloading)
iminu
2022. 7. 1. 17:45
// 두 데이터를 더하는 클래스
class Add {
// 두개의 정수를 더해서 리턴하는 함수
// 함수의 파라미터나, 리턴데이터타입이 다르면,
// 함수의 이름을 똑같이 할 수 있다.
// 이런방법을 메소드 오버로딩 이라고 한다.
public int add(int x, int y) {
return x + y;
}
public float add(float x, float y) {
return x + y;
}
public double add(double x, double y) {
return x + y;
}
public String add(String x, String y) {
return x + y;
}
}
public class AddMain {
public static void main(String[] args) {
// TODO Auto-generated method stub
// 클래스를 가지고 변수를 만드는것을
// 객체 생성 이라고 한다.
Add a = new Add();
int result = a.add(3, 5);
System.out.println(result);
float result2 = a.add(3.5f, 1.8f);
System.out.println(result2);
double result3 = a.add(3.8, 1.9);
System.out.println(result3);
String result4 = a.add("Hello", "bye");
System.out.println(result4);
}
}
함수의 이름은 같으나 함수의 리턴타입이나 파라미터가 다른 함수들을 만들 수 있다.
이것을 메소드 오버로딩이라한다.
위의 예제 처럼 함수 이름은 add로 같지만 파라미터를 다르게 받아서 더하기를 수행한다.