상속(Inheritance)보편적으로 상속이라고 하면, 부모가 자식에게 재산을 물려주는 행위를 상상하기 쉽다. 하지만 프로그래밍에서 상속이란 부모가 자식에게 기본 설계도(유전자)를 물려주어 자식이 이를 바탕으로 새로운 특성을 확장해 나가는 모습으로 생각하는 편이 좋다. 예를 들자면 기본형 스마트폰의 설계도를 물려받아 카메라 렌즈와 배터리 용량만 추가하여 프로 모델을 만드는 것과 비슷하다.자바에서 상속은 extends 키워드를 사용하며, 이미 잘 만들어진 클래스의 필드와 메서드를 재사용함으로써 코드의 중복을 줄이고 유지보수성을 극대화하는 객체지향의 핵심 메커니즘이라고 할 수 있다. 상속의 실행 순서자식 클래스의 객체를 생성할 때 JVM의 Heap 메모리 영역에서는 자식 객체가 단독으로 생성되지 않는다...