Programming Language/Java

추상 클래스(Abstract Class)

DongHo 2023. 5. 17. 02:59

추상 클래스(Abstract Class)

- 클래스 계층구조에서 상위에 위치, 하위 클래스를 대표하는 클래스
- 추상의 의미대로 "구체적"이지 않은 클래스
    - 보다 구체적인 하위 클래스를 대표하는 클래스

 

다른 일반 클래스와 구별되는 특징

- 추상클래스는 직접 객체화(instantiation) 될 수 없다. -> 즉, 생성자를 사용하여 객체를 생성할 수 없다.
- 추상 클래스는 다른 클래스에 의하여 상속되어야 한다. -> 즉, 하위 클래스가 없는 추상클래스는 의미가 없다.
- 추상 클래스는 하위 클래스가 있어야 하므로 구현 시 클래스 앞에 키워드 fianl이 올 수 없다.

 

추상 메소드

- 메소드 몸체가 없는 메소드
- 추상 메소드 정의시 반환형 앞에 키워드 abstract를 기술하고, 메소드 몸체 구현 없이 바로 세미콜론을 삽입합니다.
- 추상메소드는 private와 final이 사용될 수 없습니다.

 

추상 클래스

- 적어도 하나 이상의 추상 메소드를 가진 클래스는 반드시 추상이어야합니다.
- 키워드 fianl 이용이 불가합니다.

 

Example

public abstract void add();

 

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

Math 클래스  (0) 2023.05.17
인터페이스(interface)  (0) 2023.05.17
오버라이딩(Overriding) / 오버로딩(Overloading)  (0) 2023.05.17
다향성(Polymorphism)  (0) 2023.05.17
상속(Inheritance)  (0) 2023.05.17