실체 클래스의 공통된 필드와 메소드의 이름을 통일할 목적
실체 클래스 설계자가 여러 사람인 경우
실체 클래스마다 필드와 메소드가 제각기 다른 이름을 가질 수 있음
실체 클래스를 작성할 때 시간 절약
실체 클래스는 추가적인 필드와 메소드만 선언(정의)
실체 클래스 설계 규격을 만들고자 할 때
실체 클래스가 가져야 할 필드와 메소드를 추상 클래스에서 미리 정의
실체 클래스는 추상 클래스를 무조건 상속 받아 작성
클래스 선언에 abstract
키워드 사용
new 연산자로 객체 생성하지 못하고 상속을 통해 자식 클래스만 생성 가능
new 연산자로 객체를 생성하지는 못하지만
자식 객체가 생성될 때 super()를
호출해서 추상 클래스 객체를 생성하므로
추상 클래스도 생성자가 필요 함
public abstract class 클래스명 {
// 필드, 상수
// 생성자
// 메소드
}
public abstract String getName();
public abstract String setName(String name);