Ch7-1~2. 상속
0. 목차
Chapter7. 객체지향 프로그래밍Ⅱ
Ch7 - 1. 상속
Ch7 - 2. 상속 예제
Ch7 - 1. 상속
▶ 상속(inheritance)이란?
▷ 기존의 클래스로 새로운 클래스를 작성
▷ 코드의 재사용
▷ 두 클래스를 부모와 자식으로 관계를 맺어 주는 것
▶ 상속 작성 방법
class 자식클래스 extends 부모클래스 {
// ...
}
class Prent { }
class Chind extends Prent {
// ...
}
▶ 상속 : 부모와 조상 그리고 자식
▷ 자손은 조상(부모의 부모)의 모든 멤버를 상속 받음
▷ 생성자, 초기화 블럭 제외 후 상속
▷ 자손의 멤버 개수는 조상보다 적을 수 없음
▷ 자손의 멤버 개수 >= 조상
// 부모 : 자신 멤버 1개
class Prent {
int age;
}
// 자식 : 자신 멤버 0개 + 상속 멤버 1개 >= 부모 멤버 1개
class Child extends Parent { }
▷ 자손의 변경은 조상에 영향을 미치지 않음
// 부모 : 자신 멤버 1개
class Prent {
int age;
}
// 자식 : 자신 멤버 1개 + 상속 멤버 1개
class Child extends Parent {
void plya() {
System.out.println("Play!");
}
}
Ch7 - 2. 상속 예제
▶ 2차원 좌표의 한 점 : (x, y)
class Point {
int x;
int y;
}
▶ 3차원 좌표의 한 점 : (x, y, z)
▷ Point 클래스와 관계없는 클래스 : 부모 클래스의 변경과 관계 없음
class Point3D {
int x;
int y;
int z;
}
- 객체로 만들었을 때 모양
Point3D p = new Point3D();
▷ Point 클래스를 상속 : 부모 클래스의 변경과 관계 있음
class Point3D extends Point {
int z;
}
- 객체로 만들었을 때 모양
Point3D p = new Point3D();