안녕 오늘은 싱나는 연휴 코앞이야!

그 기념으로 오버로딩을 배워 볼꺼야

 

연휴와 오버로딩은 아무런 관련이 없지만

내 의식은 그러하다아

 

그럼 시작해볼게잇

 


Overloading

 

간단하게 정의를 해보자면

 

매개변수의 유형이나 갯수등을 다르게해서

이름이 같은 메소드를 여러개 가질 수 있게하는거야

 

돈이라는 메소드가 있어

근데 돈에는 10원~ 5만원권까지

다양하게 있지>?

 

Class MoneyType{

	public int money(int a){
    	return a;
    }
    
    public int money(int a, int b){
    	return a + b;
    }
    public int money(int b, int c){
    	return b + c;
    }
}

( 아 줴발 들여쓰기 오류좀 잡아줘열)

 

이런 식으로 메소드는 같지만 하는일은 같은거지

 

메소드를 오버로딩할때 주의점이있어

매개변수 및 갯수가 동일한게있어서는 안되는거야

 

만약에 이러한 코드가 있어

Class MoneyType{

    public int money(int a, int b){
    	return a + b;
    }
    public int money(int a, int b){
    	return a + b;
    }
}

대체 이게 무슨 자원 낭비야!

이렇게 쓰면 뭐.. 뭘쓰든 문제가 없기야 하겠지만

생각해보면 세상 비효율적이지

 

우리가 회사에서 일을하는데

A 대리 : " XX씨! 이 일좀 해줘요"

B 과장 : " XX씨! 이 일좀 해줘요"

 

근데 보니까 양식도 똑같고~ 

딱히 두개로 처리할 필요도 없는 그런일이라고 생각해봐

 

"아니 이게 무슨 쑈야..? 혹시 몰래카메라인가..?"

"이게 바로 착한 사람들한테만 보이는건가..? 다른점이 왜 안보이지"

 

너무 비효율적이겠지 ?


이런 친구들도 호출이 가능해

 

package project;

public class MethodOverloding {

	public void calc(int a){
		System.out.println(a);
	}
	
	public void calc(int a, int b){
		System.out.println(a+b);
	}
	
	public void calc(int a, int b, int c){
		System.out.println(a+b+c);
	}
	
    public static void main(String[] args) {
		
		Main sum = new Main();
		sum.calc(1);
		sum.calc(1,2);
		sum.calc(1,2,3);
    }
}

 

calc 라는 이름의 친구들 3개가 있는데

매개변수의 수가 다 다르지?

 

근데 메인메소드를 보면...?

다를게 없어

 

매개변수의 모양에 따라 맞춰주기만 했을뿐이야

 

결과가 너무 정상적으로 뜨지 ?


정리를 해보자

같은 클래스에서 같은 매소드를 사용하는것인데

매개변수의 종류, 개수가 다름

호출 = 별 달리 특별한건 없음.. 

 

하지만 이 친구는 잘 사용되는 개념이니 잘 알아두자구

 

그럼 20000!

 

 

 

 

  1. Favicon of https://html6.tistory.com BlogIcon HTML6 2020.04.29 16:11 신고

    오늘도 좋은 포스팅 감사합니다 !! :)

  2. 알 수 없는 사용자 2020.04.29 16:34

    예전에 컴퓨터 일반 배울때 배웠었는데
    오버로딩하고 오버라이딩인가요?
    두개가 햇갈렸는데
    자세히 설명해주셔서 감사합니다.~

  3. Favicon of https://freesia1092.tistory.com BlogIcon 예쁜엄마♡ 2020.04.29 16:53 신고

    👁🐽👁💦
    말하고 싶은데...
    무슨 소린지 모름..

    흑흑흑

  4. Favicon of https://sandcastle918.tistory.com BlogIcon 쑤통 2020.04.29 17:20 신고

    좋은 포스팅 잘보고 가요ㅋ

  5. Favicon of https://happysinisini.tistory.com BlogIcon 앨리의 구고마 2020.04.29 23:26 신고

    오호! 오버로딩은 처음보는데 또 하나 배우고 가네요!!
    호출은 정말 귀차니즘을 확 줄여주는 기능!!

  6. Favicon of https://haa-yee.tistory.com BlogIcon 혜니웨이 2020.05.03 20:04 신고

    오버로딩 처음 들어봤네요~! 잘 보고 갑니다 저한테는 너무 어려운 내용이네요ㅠㅠ 좋은 하루 되세요!😁