반응형
정의
추상 클래스(abstract calss)의 의미
- 클래스 계층구조에서 상위에 위치, 하위 클래스를 대표하는 클래스
- 추상의 의미대로 '구체적이지 않은' 클래스
- 보다 구체적인 하위 클래스를 대표하는 클래스
다른 일반 클래스와 구별되는 특징
- 추상 클래스는 직접 객체화(instantiation)될 수 없다.
- (즉, 생성자를 사용하여 객체를 생성할 수 없다.)
- 추상 클래스는 다른 클래스에 의하여 상속되어야 한다.
- (즉, 하위 클래스가 없는 추상 클래스는 의미가 없다.)
- 추상 클래스는 하위 클래스가 있어야 하므로 구현 시 클래스 앞에 final이 올 수 없다.
abstract 키워드
추상 메소드
추상 메소드
- 메소드 몸체가 없는 메소드
- 추상 메소드 정의 시 반환형 앞에 키워드 abstract를 기술하고
- 메소드 몸체 구현 없이 바로 세미콜론 삽입
- 추상 메소드 private와 final이 사용될 수 없음
추상 클래스
- 적어도 하나 이상의 추상 메소드를 가진 클래스는 반드시 추상이어야 함
- 키워드 final 사용 불가능
추상 메소드 구현
삼각형
- 좌표 (x, y)
- 길이
- 높이
사각형
- 좌표 (x, y)
- 길이
- 높이
원
- 좌표 (x, y)
- 반지름
반응형
'cs > java-spring-boot' 카테고리의 다른 글
[Zero-base] 4-1. Object 클래스와 String 클래스 (0) | 2022.01.27 |
---|---|
[Zero-base] 3-5. 인터페이스 (0) | 2022.01.26 |
[Zero-base] 3-3. 오버라이딩과 오버로딩 (0) | 2022.01.26 |
[Zero-base] 3-2. 다형성 (0) | 2022.01.26 |
[Zero-base] 3주차 과제 (CoordinateCompare.java) (0) | 2022.01.25 |