[D] 상속과 다형성
D에서는 클래스의 상속을 지원한다.
구조체는 상속을 사용할 수 없다.
class 클래스명: 상속받을_클래스
{ ... }
상속받은 서브클래스는 슈퍼클래스의 모든 것을 받는다.

따라서 서브클래스는 슈퍼클래스의 행동을 그대로 수행할 수 있고, 슈퍼클래스의 타입으로 감싸 저장할 수도 있다.
그런데 D에서는 C++과 마찬가지로, 오버라이딩을 수행할 때는 override 키워드를 붙여줘야 한다. 안그러면 클래스 파싱부터 에러를 던진다.


붙이면 이제 잘 된다.

현재 타입과 상관없이 실제 객체의 타입을 추적해 실행한다.