반응형
1) 추상 클래스(불완전한 클래스)
추상적인 내용만 정의하고 있는 클래스로
구체적인 내용은 상속받은 하위 클래스에서 구현되도록 설계된 클래스이다.
추상 클래스(부모)는 클래스들(자식)의 공통 요소들을 가상화시켜놓기 때문에
객체화시 구현(재정의)을 꼭 해줘야한다.
부모 추상 클래스의 역할은 단지 자식 클래스를 만들 때 도와주는 역할을 수행한다.
그렇기 때문에 자식 클래스에서 선언할 메소드의 이름과 형태만 가지고 있다.
즉, 메소드에 { } (바디)가 없다.
이런 메소드를 추상 메소드라고 하며, 리턴타입 앞에 abstract 라는 키워드가 붙는다.
추상 메소드가 클래스 내에 한 개라도 포함되어있다면 추상 클래스로 선언해야 한다.
2) 추상 클래스 선언
abstract class 클래스명{
리턴타입 일반메소드명( ) { 메소드 내용 }
abstract 리턴타입 추상메소드명( );
}
3) 추상 클래스 특징
자식 클래스에서 강제적으로 반드시 재정의해야한다.
일반 메소드도 추상 클래스 내부에 존재할 수 있다.
반응형
'Back-End > JAVA' 카테고리의 다른 글
[Java] 내부 클래스(inner class) (0) | 2021.05.28 |
---|---|
[Java] 인터페이스(interface) (0) | 2021.05.27 |
[Java] 접근 권한 제어자(접근제어자) (0) | 2021.05.27 |
[Java] Casting(Upcasting, Downcasting), instanceof (0) | 2021.05.27 |
[Java] 상속(inheritance) (0) | 2021.05.27 |