추상 클래스(Abstract Class)란 미완성 설계도라고 할 수 있다. 자동차에 비유하면 완성되지 않은 자동차라고 할 수 있다. 차체만 있고 아직 바퀴를 달지 않은 그 상태를 미완성이라고 할 수 있다. 바퀴가 없으면 달릴수가 없으니 이것은 자동차라고 아직은 말 할 수가 없다. 마찬가지로 추상 클래스는 객체를 생성할 수 없다. (즉, 바퀴를 달게 하지 않은 설계도로는 자동차를 만들 수 없다.) 추상클래스의 선언은 class 앞에 abstract를 붙이면 된다. 그리고 추상 클래스는 추상메서드를 포함하고 있고 여느 클래스와 마찬가지로 생성자와 멤버변수도 가질 수 있다. 여기서 인터페이스(interface)와 비교를 해보자. 인터페이스는 추상 클래스에서 더 추상화 된 것이다. 그래서 모든 메서드는 publ..