프로그래밍/자바(Java)

[ 자바/ JAVA ] 추상클래스(abstract class)

후르트링 2021. 7. 22. 17:38
728x90

[추상 클래스란? ]

  • 완전하지 않은 클래스를 의미합니다.
  • 구현 코드 없이 매소드의 선언만 있는 추상 매소드(abstract method)를 포함한 클래스입니다.
  • 새로운 클래스를 생성할 때의 공유의 목적을 위해서 추상클래스를 사용합니다.
abstract class Student{

    public void showData(){
        System.out.println("이름 : "+name);
    }
    // 추상메소드
    public abstract void showInfo();
}

 

[추상 클래스의 특징 및 목적]

  • 추상 클래스는 인스턴스의 생성이 불가능합니다.
  • 추상 클래스는 추상 메소드 뿐만 아니라 일반 매소드도 포함이 가능합니다.
  • 추상 클래스를 상속 받은 일반 하위 클래스는 추상 클래스의 추상매서드를 오버라이딩 했으므로 구현해야 합니다.
  • 만약에 구현을 하지 않는다면 상속 받은 하위 클래스도 abstract로 선언하여 추상 클래스로 사용이 가능합니다.
  • 그러므로 추상 클래스의 사용 목적은 추상 메소드를 포함한 클래스를 상속받는 자식 클래스가 반드시 추상 메소드를 구현하도록 강제하기 위해서 입니다.