추상클래스(미완성 설계도)
추상클래스란?
함수의 바디를 구현하지 않음.(구현부{ }가 없음)
기본적으로 1개 이상의 추상함수(미완성 메서드)를 포함하는 클래스
•
추상메서드, 생성자, 멤버변수, 메서드 가능
•
상속받는 자손 클래스에서 반드시 구현해줘야 한다(오버라이딩)
추상클래스의 용도
•
여러 클래스들의 공통적인 특성을 추출해서 선언한 클래스
•
클래스마다 동일한 기능을 제각기 다른 이름으로 가지는 것 방지
ex) draw1, draw2
작성방법
abstract class 클래스명
abstract 리턴타입 메서드이름();
추상클래스 예시1)
추상클래스 예시2)
추상화와 구체화
•
추상화는 클래스간의 공통점을 찾아내 공통의 메서드, 변수들을 만드는 작업
•
구체화는 상속을 통해 클래스를 구현, 확장하는 작업