728x90
오버로딩과 오버라이딩 차이점을 간략하게 살펴 보자..
면접 질문에서 자주 나온다는데 실제로 나는 받아 본 적이 없다-,.-
그래도 한번 간략히 알아보도록 하자!!
비슷한 이름 때문에 매번 헷갈리게 하는 거 같다..망할놈
![](https://blog.kakaocdn.net/dn/IgSAS/btrc7PUct3x/YQIdK7X2rN4HrNkpZtfnb0/img.png)
간략하게 살펴보면 아래 2줄 정도만 이해해도 될 듯하다..
- 오버로딩 : 같은 메서드 이름, 다른 인자 목록 - 다수의 메서드를 중복 정의
- 오버라이딩 : 같은 메서드 이름, 같은 인자 목록 - 상위 클래스의 메서드를 재정의
조~~금만 더 살펴보자면..귀찮으면 아래 표만 참조해도 이해가 가능하다. - Overloading
- 메서드 이름이 같아야 한다.
- 매개변수의 개수 또는 데이터 타입 또는 순서가 달라야 한다.
- 리턴 타입이 다른 경우는 오버로딩이 성립되지 않는다.
- 매개변수 명이 다른 것 과는 아무 상관이 없다.
- Overriding
- 상속에서 나온 개념
- 상위 클래스가 가지고 있는 메서드를 하위 클래스가 재정의 해서 사용한다.
[오버라이드 예시 : JAVA]
class Thought { public void message() { System.out.println("I feel like I am diagonally parked in a parallel universe."); } } public class Advice extends Thought { @Override // @Override annotation in Java 5 is optional but helpful. public void message() { System.out.println("Warning: Dates in calendar are closer than they appear."); } }
[오버로딩과 오버라이딩 표]
구분 오버로딩 오버라이딩 메서드 이름 동일 동일 매개변수, 타입 다름 동일 리턴 타입 상관없음 동일
728x90
'Language > 자바' 카테고리의 다른 글
StringTokenizer, split 차이점[공유링크] (0) | 2023.01.23 |
---|---|
자바 Scanner vs BufferedReader (0) | 2023.01.22 |
enumMap, enumSet 에 대해 간략히 알아보자. (0) | 2023.01.19 |
JRE, JVM, JDK 에 대해 간략히 알아보자. (0) | 2021.08.25 |
자바 언어의 특징을 간략히 알아보자. (0) | 2021.08.25 |
댓글