1 분 소요

📖 추상 클래스란?

A class, B class, C class 간에 비슷한 필드와 메소드를 공통적으로 추출해 만들어진 클래스이다.

추상 클래스는 실체 클래스들의 공통적인 부분에 대해서 어느정도 규격을 잡아놓은 추상적인 클래스이다. 그래서 실체 클래스는 실제 객체를 생성할 정도의 구체성을 가지지만 추상 클래스는 어느 정도 틀만 짜여진 추상적인 데이터들이 담긴 클래스이다. 따라서 추상 클래스는 실제 객체를 생성할 수 없다.

추상 클래스와 실체 클래스는 상속 관계이다.

📖 추상 클래스의 특징

  • 추상 메서드와 일반 메서드로 구성되어 있다.
  • new 연산자를 통한 인스턴스 생성이 불가능하다.

    → 서브클래스에서 super 키워드를 통해서 생성자 메서드를 호출하는 것은 가능하다.

  • 추상 클래스는 다른 클래스가 상속을 받아서 사용하게 만드는 틀로써, 모든 서브 클래스들은 추상 클래스 내의 모든 추상 메서드들을 강제적으로 오버라이딩해서 사용해야 한다.

📖 추상 클래스의 용도

1. 필드와 메서드 통일

각자 10명의 개발자에게 어떤 것에 대한 클래스를 구현하라고 하면 각기 다른 내용의 클래스들이 구현이 될 것이고, 선언의 내용이 다 달라 유지보수가 어려울 것이다. 그래서 추상클래스를 통해 공통된 부분을 통일해버리면, 유지보수성과 통일성을 높일 수 있다.

2. 실체 클래스 구현 시, 시간 절약

처음부터 개발을 하려면 고려해야 할 사항도 일일이 따져보아야 하겠지만, 필드와 메소드가 강제로 주어진다면 실체클래스의 컨셉에 맞게 오버라이딩을 하면 된다.

3. 규격에 맞는 실체 클래스 구현

추상클래스 안에 abstract 키워드를 가지는 추상 메서드가 있다면, 반드시 오버라이딩해서 재정의를 해주어야 실행이 가능하다.

참고


https://velog.io/@ung6860/JAVA추상클래스에-대하여-알아보자

https://limkydev.tistory.com/188

댓글남기기