프로그래밍/JAVA

추상(abstract)

라롸 2020. 2. 4. 12:05

추상(abstract)

  사전적 의미로 추상(abstract)은 실체 간에 공통되는 특성을 추출한 것을 말한다. 객체를 직접 생성할 수 있는 클래스를 실체 클래스라고 한다면 이 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상 클래스라고 한다.
추상 클래스와 실체 클래스는 상속 관계를 가지고 있다. 추상 클래스가 부모이고 실체 클래스가 자식으로 구현되어 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성을 가질 수 있다. 이러한 추상 클래스의 특성으로 다형성을 실현할 수 있다.

 

정의되지 않은 메소드 = 추상 메소드
추상 메소드를 가진 클래스 = 추상 클래스
추상 클래스 = 객체 생성을 할 수 없다


그리고 이러한 추상 메소드로만 구성된 클래스를 인터페이스(interface)라고 하며, 인터페이스로 구현된 객체는 구현(implement) 객체라고 한다.