추상화는 상속을 강제하는 방법 중 하나다. abstract로 지정하면 바로 사용할 수 없고 상속을 해야만 사용할 수 있다. 추상화 사용이유 1) 상속과 오버라이딩을 강제하기 위해 강제성을 부여하지 않고 클래스를 정의하게될 때 문제점. a가 A를 상속한다고 했을때, a는 A의 메서드를 오버라이딩해서 사용할 수 있다. 근데 오버라이딩은 선택일뿐 자식은 부모의 것을 쓰든 안쓰든 부모입장에서는 강제할 방법이 없다. 즉, 자식은 자유성을 가지고 있다. 근데 만약 만약 모든 부품을 똑같이 만들어야되는데 자식이 실수로 하나를 빠뜨리게된다면?? 이런 상황을 막기 위해 필수로 사용해야 하는 것을 추상메서드로 적는다. 자식이 빠뜨렸을 경우, 오류가 나게해서 무조건 쓰게 만드는것이다. 2) 공통된 기능을 통일하기 위해. 꼭..