상속
- 기존 클래스(부모 클래스)를 재사용하여 새로운 클래스(자식 클래스)를 작성하는 것
- 자식 클래스는
부모 클래스+자기 자신
이므로 부모클래스와 기능이 같거나 더 많음
- 보다 적은 양의 코드로 새로운 클래스를 작성 할 수 있음
- 생성자와 Private는 상속 불가
class Child extends Parents{}
Child 클래스가 Parent클래스를 상속하게 됨
상속의 특징
- 하위 객체는 상속받은 상위 객체를 포함하고 있음
- 부분상속은 불가능하며 클래스 전체를 상속해야함
- 두 개 이상의 상위클래스를 동시에 상속 받을 수 없음(다중상속 불가)
- 상위 클래스가 지정되지 않은 클래스는 항상 자동적으로 Object 클래스를 상속 받음
상속의 사용
- A, B, C 클래스에 공통속성이나 기능이 있을 때
- Parent 클래스 재사용 가능
- 코드 중복제거 및 유지보수성을 높임
- A, B, C를 같은 클래스로 만들어야 할 때
- 클래스 형변환 가능
- Parent라는 하나의 타입으로 A, B, C 관리 가능
- A, B, C가 Parent의 기능을 사용하고 싶을 때
Super
1. 부모클래스 Parent
class Parent{
int x, y;
Parent (int x, int y){
this.x = x;
this.y = y;
}
}
2. 자식클래스 Child
class Child extends Parent{
int z;
Child(int x, int y, int z){
super(x,y); // 부모클래스 Parent에서 int x, int y값을 갖게 됨
this.z = z;
}
}