티스토리 뷰
오버 라이딩 (overriding)
조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다.
오버 라이딩 조건
선언부가 서로 일치해야 한다.
자손 클래스에서 오버 라이딩하는 메서드는 조상 클래스의 메서드와 이름, 매개변수, 반환 타입이 같아야 한다.
※ 단, 접근 제어자와 예외는 제한된 조건 하에서만 다르게 변경할 수 있다.
다시 한 번 집고가는 오버로딩과 오버라이딩 차이
오버로딩
한 클래스 내에 같은 이름의 메서드를 여러 개 정의하는 것 (메서드 이름이 같아야하며, 매개변수의 개수 또는 타입이 달라야한다)
오버라이딩
상속받은 메서드의 내용을 변경하는 것 (선언부가 일치해야한다)
class Parent {
void parentMethod() {}
}
class Child extends Parent {
void parentMethod() {} // 오버라이딩
void parentMethod(int i) {} //오버로딩 (매개변수의 타입, 개수가 다름)
void childMethod() {}
void childMethod(int i) {} // 오버로딩
void childMethod() {} // 이미 위에 메소드가 중복 정의되어있어 에러 발생
}
'study > Java' 카테고리의 다른 글
추상 클래스 & 메서드 (0) | 2022.12.22 |
---|---|
제어자 (modifier) (0) | 2022.12.20 |
상속 (inheritance) (0) | 2022.11.16 |
생성자 (constructor) (0) | 2022.11.10 |
오버 로딩 (overloading) (0) | 2022.11.08 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 혼자 공부하는 파이썬
- 배열
- 웹페이지
- error: failed to push some refs to 'https://github.com/
- 환경 변수 설정
- Java
- 면접을 위한 CS 전공 지식 노트
- 디자인 패턴
- API
- 회원 로그인
- musma
- authenticate()
- python3
- django
- Django tutorial
- 톰캣
- 한글 형태소 분석기
- git 공부
- 커맨드 객체
- django-environ
- Python
- git공부
- path variable
- Magazine K
- Spring
- 검색 결과 내 페이지네이션
- git
- django.contrib.auth
- 암호화
- 회원가입
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
글 보관함