JAVA

객체지향 메서드 오버로딩(overloading)

연93 2022. 9. 25. 14:39

**한 클래스 안에 같은 이름의 메서드 여러 개를 정의 하는것**

오버로딩이 성립하기 위한 조건

  • 메서드 이름이 같아야 한다.
  • 매개변수의 개수 또는 타입이 달라야 한다.
  • 반환 타입은 영향없다.
public class Ex6_5 {
	// 메서드 이름이 같아야한다. 개수 타입에서 에러
	int add(int a, int b) { return a+b; } //오버로딩x 동일 메소드 정의
	int add(int x, int y) { return x+y; } //오버로딩x
	
	// 반환 타입은 영향없다
	int add(int a, int b) { return a+b; } // 오버로딩 x
	int add(int a, int b) { return (long)(a+b); } // 오버로딩 x
	
	//매서드 이름이 같고 
	//매개변수의 개수 또는 타입이 다르므로 오버로딩 ok
	long add(int a, long b) { return a+b; }
	long add(long a, int b) { return a+b; }
}