* 공부와 업무 정리를 위해 포스팅 합니다.
* 정확하지 않는 내용이 있을 수 있으니 참고해주시면 감사하겠습니다.
업무를 하면서 implements와 extends 로 상속된 소스를 많이 본다.
그때마다 "상속 되었구나" 정도만 생각하고 넘어갔지만 자세한 개념 이해의 필요성을 느껴 정리해본다.
<상속(Inheritance)>
- 클래스는 단 하나의 추상 클래스를 상속할 수 있고 여러 개의 인터페이스를 구현할 수 있다.
- 추상 클래스는 객체 타입을 나타내고 인터페이스는 일련의 행동(동작)을 나타내기 때문이다.
<implements>
- 선언만 있는 interface를 상속하여 재정의(Overriding)하여 사용
- implements 로 상속할 경우 해당 interface의 메소드를 모두 재정의해야 함
- class 파일에서 implements 로 상속받아 선언 메소드를 구현하여 사용
<extends>
- 클래스/인터페이스에서 상속하여 해당 변수/메소드를 재정의(Overriding) 없이 그대로 사용 가능
- interface에서 extends 로 상속받으면 사용하고 싶은 메소드만 가져올 수 있음
Reference
'개발 언어 > 자바(Java)' 카테고리의 다른 글
[개념정리] 추상 클래스 & 인터페이스 차이점 및 특징 (0) | 2024.06.15 |
---|---|
자바 메모리 영역(Static, Stack, Heap) (0) | 2023.02.19 |
Java의 정석 기본 상식 (0) | 2021.09.17 |