7.1.1 상속
- 기존의 클래스를 재사용하여 새로운 클래스 작성
- 확장(extends)
class Child extends Parent{}
- 조상 클래스 : 부모(parent), 상위(super), 기반(base)
- 자손 클래스 : 자식(child), 하위(sub), 파생된(derived)
- 자식 클래스는 부모 클래스를 포함한다
- 자식 클래스는 부모의 모든 멤버를 상속받는다.
7.1.2 간접조상 직접조상
- 간접조상 : 자식 클래스가 상속을 받은 부모 클래스의 부모 클래스(조부모)
- 직접조상 : 자식 클래스가 상속을 받은 부모 클래스
class Parent{}
class Child extends Parent {}
class Child2 extends Parent {}
class GrandChild extends Child {}
/*
GrandChild를 기준으로 Parent가 간접조상
GrandChild를 기준으로 Child가 직접조상
클래스간의 형제 관계 같은건 없다. 따라서 Child과 Child2는 아무런 관계가 없다.
*/
7.1.3 포함관계
- 한 클래스의 멤버변수로 다른 클래스 타입의 참조변수를 선언하는 것
class Cycle{
Point c = new Point();
}
class Point{}
7.1.4 클래스간 관계 설정하기
- 상속관계 : is-a(
다)
은 - 포함관계 : has-a(
을 가지고 있다.)
은
//원(Cycle)은 도형(Shape)이다(is-a)
class Cycle extends Shape{}
//원(Cycle)은 점(Point)을 가지고 있다(has-a)
class Cycle{
Point c = new Point();
}
'자바의 정석 정리' 카테고리의 다른 글
자바의 정석 - 7.3 Object 클래스 (0) | 2022.06.13 |
---|---|
자바의 정석 - 7.2 단일상속 (0) | 2022.06.13 |
자바의 정석 - 6.9 변수의 초기화 (0) | 2022.06.10 |
자바의 정석 - 6.8 생성자 (0) | 2022.06.10 |
자바의 정석 - 6.7 오버로딩 (0) | 2022.06.10 |