ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 추상클래스(abstract class)
    Programming/Java 2021. 8. 23. 11:17

    추상 개념

    • 추상화 : 공통되는 속성을 추출해 조상클래스를 만든다

      ※ 구체화 : 조상 클래스를 사용해 자손 클래스를 만든다.(상속)

    • abstract 키워드를 붙인다.

     

    추상클래스

    • 미완성 클래스 -> new 명령문으로 인스턴스 생성 불가
    • 자손클래스에 의해서만 완성될 수 있다.
    • 자체로는 클래스로서의 역할을 온전히 할 수 없으나 새로운 클래스들을 작성 시 틀이 되는 조상클래스로서 중요한 의미를 가짐
    • 추상메서드를 한 개 이상 가진 클래스
    • 클래스 선언부에 abstract 반드시 명시

     

    추상메서드 (abstract method)

    • 미완성 메서드
    • 메서드 선언부만 있고 구현부(본문)가 없다({ } 블록 자체가 없음)
    • 설계만 해놓고 실제 수행될 내용은 자손클래스에서 구현하도록 비워둔다.
    • 메서드 선언부에 abstract 명시

    추상클래스를 상속받은 자식 클래스는

    1. 추상메서드 오버라이딩 또는

    2. 본인도 추상클래스가 되는 두 가지 선택지 중 택일해야 한다.


     

    질문) 구현부 내용 없이 { }만 두는 것과 추상메서드로 만드는 것의 차이는?

    구현부가 빈 메서드는 자손클래스에서 오버라이딩을 안 할 수도 있다. 그러나 추상메서드로 만들면 자손클래스에서 반드시 오버라이딩하여 구현해야 한다. 반드시 필요한 메서드를 강제하기 위해 추상메서드로 설계한다.

    'Programming > Java' 카테고리의 다른 글

    static 메서드와 인스턴스 메서드  (0) 2021.10.07
    롬복 @NoArgsConstructor, @RequiredArgsConstructor, @AllArgsConstructor  (0) 2021.09.18
    제어자의 조합  (0) 2021.08.09
    접근제어자  (0) 2021.08.09
    제어자 modifier  (0) 2021.08.09

    댓글

Designed by Tistory.