부모(객체) 속성 + 기능을
자식(객체 (속성 + 기능)) + 부모 (속성 + 기능)
유지보수 및 재사용성 증가
코드길이 감소
상속의 장점!
다른 클래스가 가지고 있는 멤버(필드, 메소드)들(부모)을 새로 작성할 클래스(자식)에서 직접 만들지 않고 상속을 받음으로써 새 클래스가 자신의 멤버처럼 사용할 수 있는 기능
클래스의 재사용, 연관된 일련의 클래스들에 대한 공통적인 규약 정의
표현식
클래스 간의 상속 시에는 extends 키워드 사용
방법
[접근제한자] class 클래스명(자식) extends 클래스명(부모) {}
부모 객체의 생성자를 호출하는 메소드로 기본적으로 후손 생성자에 부모 생성자 포함
후손 객체 생성 시에는 부모부터 생성이 되기 때문에 후손 클래스 생성자 안에는
부모 생성자를 호출하는 super()가 첫 줄에 존재 (부모 생성자가 가장 먼저 실행되어야 하기 때문에 명시적으로 작성 시에도 반드시 첫 줄에만 작성)
매개변수 있는 부모 생성자 호출은 super(매개변수, 매개변수)를 넣으면 됨
상속을 통한 자식 클래스 정의 시 해당 자식 클래스의 부모 객체를 가리키는 참조변수
자식 클래스 내에서 부모 클래스 객체에 접근하여 필드나 메소드 호출 시 사용