예제로 공부하는 Java 100 문제풀이 Part.3
[1]: 상속(Inheritance)이란?
말 그대로 부모 클래스가 가지고 있는 속성(변수)들과 동작/기능(메서드)들을 그대로 물려받아 새로운 클래스를 만드는 것.
상속을 활용하면 물려받은 것들은 그대로 쓰면 되고, 거기에 덧붙여 새로운 것만 만들면 되므로 그만큼 노력과 시간이 세이브 됨.
이때, 물려받게 되는 원본 클래스를 부모 클래스(Parent class) 또는 슈퍼 클래스(Super class)라고 부른다.
상속받아 새롭게 만들어진 클래스는 말 그대로 자식 클래스(Child class) 또는 서브/하위 클래스(Sub class)라고 부른다.
또 다른 표현으로는 기초/기반 클래스(Basic class), 파생 클래스(Derived class)라고 부른다.
[2]: 상속의 장점
가장 큰 장점 --> 부모 클래스 재활용
완전히 새로운 것을 만드는 것이 아니라 기존 부모로부터 상속을 받아 필요한 것만 추가로 더해서 만드는 것.
부모 클래스에 정의 되어져있는 멤버 필드(변수)나 메서드들을 그대로 상속받아 사용하면 됨.
상속받은 메서드라 해도 필요에 따라서 자식 클래스에서 용도를 변경해서 사용하는 것도 가능.
[3]: 상속의 사용
기존 부모 클래스를 확장한다는 개념 --> extends 키워드 사용.
부모 클래스의 멤버 필드, 메서드는 상속이 가능하나 생성자는 상속이 안 된다.
부모 클래스의 접근 제한자가 private인 경우에는 아무리 자식 클래스가 상속을 받았다 하더라도 접근이 불가능하다.
'Backend > Java' 카테고리의 다른 글
[인프런] getter, setter, 클래스 (0) | 2022.03.02 |
---|---|
[인프런] 클래스, 상속, 구현, 코드 (1) | 2022.03.01 |
[인프런] 객체, 생성자, 메서드, 구현 (0) | 2022.03.01 |
[인프런] 클래스, 생성자, 특징, 개념 (0) | 2022.03.01 |
[인프런] 변수, 천단위, 콤마 (0) | 2022.03.01 |