728x90
반응형
객체를 직접 생성할 수 있는 클래스를 실체 클래스라고 한다면, 이 클래스들의 공통적인 특성을 추출해서 선언한 클래스를 추상 클래스라고 합니다. 추상 클래스가 부모, 실체 클래스가 자식으로 구현되면 실체 클래스는 추상 클래스의 모든 특성을 물려받고, 추가적인 특성을 가질 수 있습니다.
추상 클래스를 선언할 때는 선언에 abstract 키워드를 붙여야 합니다.
abstract를 붙이면 new 연산자를 이용해서 객체를 만들지 못하고, 상속을 통해 자식 클래스를 만들 수 있습니다.
실체 클래스를 설계하는 사람이 여러 사람일 경우, 실체 클래스마다 필드와 메서드가 각기 다른 이름을 가질 수 있습니다.
추상 클래스는 실체 클래스의 공통된 필드와 메서드의 이름을 통일할 용도로 사용합니다.
실체 클래스가 가져야 할 필드와 메서드를 미리 추상 클래스에 정의하므로 실체 클래스 설계 규격을 만들고자 할 때 사용됩니다.
반응형
추상 클래스 설계 시, 하위 클래스가 반드시 실행 내용을 실행하도록 강제하고 싶은 메서드가 있을 경우 해당 메서드를 추상 메서드로 선언합니다.
자식 클래스는 반드시 추상 메서드를 재정의해서 실행 내용을 작성해야 하는데, 그렇지 않으면 컴파일 에러가 발생합니다.
728x90
반응형
'프로그래밍 언어 > 자바 (Java)' 카테고리의 다른 글
[자바(Java) 공부하기] 20. 다형성 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.20 |
---|---|
[자바(Java) 공부하기] 19. 상속 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.19 |
[자바(Java) 공부하기] 18. 중첩 클래스 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.18 |
[자바(Java) 공부하기] 17. 지정 예약어 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.17 |
[자바(Java) 공부하기] 16. 접근제한자 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.16 |
[자바(Java) 공부하기] 15. 클래스 배열(객체 배열) - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.15 |
[자바(Java) 공부하기] 14. 생성자 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.14 |
[자바(Java) 공부하기] 13. 필드 - 우당탕탕 개발자 되기 프로젝트 (0) | 2023.07.13 |