본문 바로가기

Java의 정석

추상 클래스(abstract class)

클래스가 설계도라면 추상 클래스는 미완성 설계도이다.

 

클래스가 미완성이라는 것은 멤버의 개수에 관계된 것이 아니라 추상 클래스를 포함하고 있다는 의미이며 추상 클래스로 인스턴스는 생성할 수 없다.

 

추상 클래스 자체로는 클래스로서의 역할을 다 못하지만 새로운 클래스를 작성하는 데 있어서 바탕이 되는 조상 클래스로서 중요한 의미를 갖는다.

 

스마트폰을 예로 들자면 여러 회사의 여러 제품이 있고 내부에 들어있는 칩이나 소프트웨어는 다르겠지만 물리적인 설계는 어느 정도 동일할 것이다. 스마트폰마다 설계를 새로 시작하기보다는 공통된 부분의 미완성 설계를 해놓고 거기에 새로운 설계를 추가하여 완성하는 것이 훨씬 효율적이다.

 

추상 클래스는 abstract를 붙이기만 하면 이 클래스에는 추상메서드가 있으니 상속을 통해서 구현해주어야 한다는 것을 쉽게 알 수 있을 것이다.

 

추상 클래스는 추상 메서드를 포함하고 있다는 것을 제외하고는 일반 클래스와 전혀 다르지 않고 추상 클래스에도 생성자가 있으며 멤버변수와 메서드도 가질 수 있다.

'Java의 정석' 카테고리의 다른 글

추상클래스의 작성  (0) 2022.04.18
추상 메서드(abstract method)  (0) 2022.04.15
객체를 배열로 다루기  (0) 2022.04.13
매개변수의 다형성  (0) 2022.04.12
instanceof 연산자  (0) 2022.04.11