개발새발

[Java] Overloading 본문

Java/개념을 Java

[Java] Overloading

칸쵸. 2023. 9. 27. 01:03
728x90

간만에 초간단 설명 및 코드만으로 끝내는 글을 들고 왔습니다

그냥 넘어가려했는데 상속 파트에서 Overriding을 다룬 것에 비해 너무 대충 넘어갔나.. 하는 생각이 들어서요

암튼 레지고

 


1. Overload

한 클래스 내에서 동일한 이름을 가진 메서드를 여러 개 정의하는 것

앞 글에서도 말했지만 다시 한 번 말 합니다... 제발 오버로딩과 헷갈리지 말 것. 진짜 제발...!!!!!!!!!!

 

2. 주의할 점

  1. 메서드 이름이 같아야 함 당연함
  2. 매개변수의 타입, 개수 또는 순서 셋 중 하나라도 달라야 함
  3. 반환 타입은 오버로딩을 구분하는데 사용되지 않음
  4. 접근제한자는 오버로딩을  구분하는데 사용되지 않음

예시)

오버로딩 5개 만들고 메서드 5개 출력해보세요

public class OverSample {
	
	// 두 개 정수 곱을 반환하는 생성자
	public int Mul(int a, int b) {
		return a * b;
	}
	
	// 세 개 정수 곱
	public int Mul(int c, int d, int e) {
		return c * d * e;
	}
	
	// 두 개 실수 곱
	public double Mul(double f, double g) {
		return f * g;
	}
	
	// 세 개 실수 곱
	public double Mul(double h, double i, double j) {
		return h * i * j;
	}
	
	// 한 개 실수 제곱
	public double Mul(double k) {
		return k*k ;
	}

	public static void main(String[] args) {
		
		//객체이자 인스턴스 생성.....
		OverSample obj = new OverSample();
		
		//메서드 호출
		System.out.println("두 정수의 곱 : " + obj.Mul(3,4));
		System.out.println("세 정수의 곱 : " + obj.Mul(3,4,5));
		System.out.println("두 실수의 곱 : " + obj.Mul(1.5,3.5));
		System.out.println("세 실수의 곱 : " + obj.Mul(1.5, 3.5, 5.5));
		System.out.println("한 실수의 제곱 : " + obj.Mul(5.5));

	}

}

출력결과

 

끝!!!

거짓말 안치고 글 쓰는데 노래 한 곡도 다 안 끝났네요 이럴 수가

근데 머 이런 글도 있어야죠 쩝

 

개꿀