오버로딩(Overloading) / 오버라이딩(Overriding) 차이 쉽게

리트리버J

·

2022. 3. 28. 09:51

728x90

오버로딩(Overloading)

 

- 한 클래스 내에서 이름이 같은 메소드명이 여러개 필요 할 때.

 

✔ 조건

- 메소드의 이름이 같고,

- 매개변수의 개수 / 타입이 달라야 한다.

- 리턴값만(String, void 등등) 다른 것은 오버로딩 불가.

 

✅사전적 의미 : 과적하다

Easy to understand

트럭에 물건을 쌓아야 하는데 같은 물건(매개변수)로는 안된다.

개수가 다르거나, 크기(타입)이 달라야 한다.

 

오버라이딩(Overriding)

 

- 부모 클래스로부터 상속받은 메소드를 자식 클래스에서 재정의하는것.

- 상속받은 메소드를 그대로 사용할 수도 있지만, 자식 클래스에서 상황에 맞게 변경해야하는 경우 오버라이딩할 필요가 생긴다.

 

✔ 조건

- 메소드의 이름, 매개변수, 리턴 값이 모두 같아야 한다.

 

✅사전적 의미 : 우세하다

Easy to understand

부모보다 더 우세한 유전자를 받았다.

내용만 다를 뿐 유전자 염기서열(이름,매개변수,리턴값)은 같다고 생각해보자.

 

 

 

728x90