#오버로딩 (Overloading)
1. 같은 이름의 메서드를 여러 개 정의하는 것.
2. 메서드 마다 서로 다른 매개변수를 가져야한다.(반환 타입만 다른 오버로딩 불가)
3. 메서드 오버로딩은 컴파일 시간에 결정 된다.
public class Mouse {
// 기본적으로 마우스를 클릭하는 메서드
public void click() {
System.out.println("마우스 클릭됨");
}
// 좌표를 지정하여 마우스를 클릭하는 메서드
public void click(int x, int y) {
System.out.println("마우스가 (" + x + ", " + y + ") 위치에서 클릭됨");
}
// 좌표와 버튼 타입을 지정하여 마우스를 클릭하는 메서드
public void click(int x, int y, String buttonType) {
System.out.println("마우스가 (" + x + ", " + y + ") 위치에서 " + buttonType + " 버튼으로 클릭됨");
}
// 클릭 후 클릭 강도를 지정하는 메서드
public void click(String buttonType, int pressure) {
System.out.println("마우스가 " + buttonType + " 버튼으로 " + pressure + " 강도로 클릭됨");
}
public static void main(String[] args) {
Mouse myMouse = new Mouse();
myMouse.click(); // 기본 클릭 메서드 호출
myMouse.click(100, 200); // 좌표를 지정하여 클릭 메서드 호출
myMouse.click(150, 250, "오른쪽"); // 좌표와 버튼 타입을 지정하여 클릭 메서드 호출
myMouse.click("왼쪽", 5); // 버튼 타입과 클릭 강도를 지정하여 클릭 메서드 호출
}
}