티스토리 뷰

Java

[Java] 추상 클래스

개발자 쿠키 2022. 7. 27. 13:53

추상 클래스

  • 부모 클래스가 제공하지만, 실제 생성되면 안되는 클래스
  • 추상 클래스는 이름 그대로 추상적인 개념을 제공하는 클래스
  • 인스턴스가 존재하지 않는다.
  • 상속을 목적으로 사용되고, 부모 클래스 역할을 담당한다.

 

추상 메서드

  • 부모 클래스를 상속 받는 자식 클래스가 반드시 오버라이딩 해야 하는 메서드를 부모 클래스에 정의할 수 있다.
  • 추상적인 개념을 제공하는 메서드. 실체가 존재하지 않고, 메서드 바디가 없다.
public abstract void sound();
  • 추상 메서드가 하나라도 있는 클래스는 추상 클래스로 선언해야 한다.
  • 추상 메서드는 상속 받는 자식 클래스가 반드시 오버라이딩 해서 사용해야 한다.

 

순수 추상 클래스

public abstract class AbstractAnimal {
	 public abstract void sound();
	 public abstract void move();
}

상속하는 클래스는 모든 메서드를 구현해야 한다.

 

순수 추상 클래스 특징

  • 인스턴스를 생성할 수 없다.
  • 상속시 자식은 모든 메서드를 오버라이딩 해야 한다.
  • 주로 다형성을 위해 사용된다.

상속하는 클래스는 모든 메서드를 구현해야 한다.