추상클래스란 실체 클래스들의 공통되는 필드와 메소드 정의한 클래스로 추상 클래스는 실체 클래스의 부모 클래스 역할이다. (단독 객체 X) 필드와 메서드 구성로 구성이 되어있으며 객체 생성이 단독적으로 불가하기 때문에 추상클래스는 사용 시 구현해줘야 한다. (다중상속 불가)
공통적 필드와 메서드를 선언 후에 자식이 상속받아 사용한다. 추상클래스를 사용하면 시간이 절약되며 동일 기능의 같은 메서드명이 사용이 가능하기 때문이다.
실체 클래스 설계 규격을 만들고자 할 때나 실체 클래스의 공통된 필드와 메소드의 이름을 통일할 목적과 실체 클래스를 설계자가 여러 사람일 경우, 실체 클래스마다 필드와 메소드가 제각기 다른 이름을 가질 수 있기 때문에,
실체 클래스를 작성할 때 시간이 절약되며 실체 클래스는 추가적인 필드와 메소드만 선언한다.
메소드 이름 동일하지만, 실행 내용이 실체 클래스마다 다른 메소드 (ex. 동물은 소리를 낸다. 하지만 실체 동물들의 소리는 제각기 다르다.)
• 추상 클래스에는 메소드의 선언부만 작성 (추상 메소드)
• 실체 클래스에서 메소드의 실행 내용 작성(오버라이딩(Overriding))