오버라이딩(overriding) : 부모 클래스의 메소드의 동작 방법을 변경(재정의)하여 우선적으로 사용.
오버로딩(overloading) : 이름은 같지만 시그니처(파라미터, 수, 타입)되는 다른 메소드를 중복으로 선언하는 것.
1. 오버라이딩(overriding)
- 오버라이드 하고자 하는 메서드가 상위클래스에 존재해야 한다.
- 메서드 이름이 같아야한다.
- 메서드 파라미터의 갯수, 자료형이 모두 같아야한다.
- 메서드 리턴타입이 같아야 한다.
- 상위 메서드와 동일하거나 내용이 추가(재정의)되어야 한다.
2. 오버로딩(overloading)
- 메소드 이름이 같아야 한다.
- 리턴타입이 같거나 달라도 된다.
- 리턴타입은 시그니처에 포함되지 않기때문에 주의, 컴파일 에러 발생
- 파라미터 갯수가 달라야한다.
- 파라미터 개수가 같을 경우, 데이터 타입이 달라야한다.
'CS > JAVA' 카테고리의 다른 글
Call by value와 Call by reference, 비슷한 이름이지만 전혀 다른 두 친구 (0) | 2021.03.20 |
---|---|
JAVA Compile 과정, 이 일대기를 들어보자 (0) | 2021.03.20 |
Java Virtual Machine 이 친구의 이야기를 들어보자. (0) | 2021.03.19 |
HashMap, 이 친구의 이야기 공식문서로 알아보자 [Java 11] (0) | 2021.03.09 |
Java의 입출력 (0) | 2021.02.21 |