2015. 4. 28. 14:28
추상클래스(Abstract Class)
추상(abstract) : 실제들 간에 공통되는 특성을 추출한 것을 말한다.
ex) 새, 곤충, 물고기 -> 동물(추상)
추상 클래스(abstract class)
- 실체 클래스들의 공통되는 필드와 메소드를 정의한 클래스를 말한다.
- 추상 클래스는 실제 클래스의 부모 클래스 역할을 할 수 있다.
- 추상 클래스는 단독으로 객체 생성을 할 수 없고, 부모 클래스로만 사용된다.
Animal animal = new Animal(); (X)
class Ant extends Animal { ..... } (ㅇ)
추상 클래스의 용도
- 실체 클래스의 공통된 필드와 메소드의 이름을 통일할 목적
. 실체 클래스를 설계하는 사람이 여러 사람일 경우,
. 실체 클래스마다 필드와 메소드가 제각기 다른 이름을 가질 수 있다.
- 실체 클래스 설계 규격을 만들고자 할 때
. 실체 클래스가 가져야할 필드와 메소드를 추상클래스에 미리 정의해 놓고
. 실체 클래스는 추상 클래스를 무조건 상속받아 작성토록 한다.
Phone - Telephone, SmartPhone
추상 메소드와 오버라이딩(재정의)
구현방법
- 추상클래스에는 메소드의 선언부만 작성한다. (추상 메소드)
- 실체 클래스에서 메소드의 실행 내용을 작성한다.(오버라이딩(Overriding))
반응형
'JAVA Programming' 카테고리의 다른 글
인터페이스 (Interface) (0) | 2015.04.30 |
---|---|
자동 타입 변환 (0) | 2015.04.27 |
protected 접근 제한자 (0) | 2015.04.27 |
어노테이션(Annotation) #2 (0) | 2015.04.23 |
어노테이션(Annotation) #1 (0) | 2015.04.23 |