엘프라는 클래스가 있고 다크엘프라는 클래스가 있을 때, 다크엘프 클래스를 선언문 작성 시 뒤에 exteds 엘프 형식으로 확장 할 수 있다. 일반엘프라는 클래스를 선언 할 때도 exteds 엘프 를 뒤에 붙여 확장을 할 수 있다. 이렇게 되면 엘프라는 부모 클래스가 있고 그 자식 클래스에 다크엘프와 일반엘프라는 자식 클래스가 있다고 말한다. 이는 다크 엘프와 일반 엘프가 가지는 공통적인 메소드나 변수를 중복하여 작성하지 않고 프로그래밍을 작성하기 위함이며 추후 수정을 용이하게 하기 위함이기도 하다. (엘프의 수명은 엘프의 종류에 상관 없이 모두 같다고 하자. 이런 상황에서 공통적인 부분인 이 수명 부분을 부모 클래스인 엘프 클래스에 선언하였다. 자 이제 모든 엘프의 수명을 3000년으로 변경하고 싶을 때에 일일이 다크엘프 클래스와 일반엘프 클래스의 변수에 접근 하지 않고도 모든 엘프들의 수명을 부모 클래스에서 조정해 버릴 수 있다.)
이 부모 클래스는 자식 클래스에 메소드를 상속 시켜 준다. 부모가 죽기 전에 자식이 재산을 상속 받으면 마음대로 처분하고 팔수 있고 가훈도 바꿀 수 있게 된다. 물론 부모가 살던 집에 예쁘게 발라놓은 황토색 벽지(필드)가 있을 경우 그 벽지(필드)를 그대로 사용 할 수도 있게 된다. 부모 클래스 명이 김구라이고 자식 클래스 명이 아들이라고 할 때에 그 아들 클래스의 인스턴스로 김동현을 만들었다고 해보자. 벽지는 커녕 집 조차 없던 김동현이었지만 이제 누군가 김동현의 벽지 색은 무슨 색이요 하고 물으면 황토색이라고 대답해도 되는 것이다. 물론 아들 클래스의 인스턴스로 김동철이라는 인스턴스가 생겼을 때, 김동철의 벽지 색은 무슨 색이요 하고 물어도 황토색이라고 대답해야 한다. 그들이 부모의 황토색 벽지를 바른 집을 물려 받아서 사는 이상 그들은 개념적으로 같은 방에 사는 셈이다. 단 그들은 함께 자는 것을 싫어해서 각각 돌아가면서 자기로 서로 약속을 했다.
벽지 색을 바꿀 수 없다고 미리 슬퍼하지는 말자. 바꾸는 방법이 없는 것은 아니다. 부모가 발라 놓은 벽지 위에 덧발라서 새 벽지를 바를 수도 있다. (이것이 메소드 차원에서 일어나는 것을 매소드 오버라이딩이라고 한다). 물론 벽지를 바를 때에 원래 있던 벽지의 크기와 재료 등을 일치시켜야 한다. 어느 날 부턴가 김구라에게 물려받은 집에서 자던 김동현은 그 집을 사용 할 때마다 황토 벽지 위에 노란 벽지를 바르기로 했다. 그렇게 하면 자신이 있는 동안만은 물려 받은 집의 벽지 색이 노란색이 되는 것이다. 그리고 둘째 아들이 자려고 오면은 손가락을 똭! 튕겨서 그 발라 놓은 자신의 벽지가 없어지게 했다. 그러면 그 뒤에 있던 황토색 벽이 그대로 보이고 김동철이 잘 때는 새로 도배를 하지 않는 이상 또다시 황토색 벽지가 있는 방에서 자게 되는 것이다.