자바에서 일반적인 클래스와 추상 클래스의 차이:
- 보통의 클래스는 구체적인 데이터를 담아 인스턴스화하여 직접 다루는 클래스
- 추상 클래스는 추상적인 데이터를 담고 있는 클래스로, 하나 이상의 추상 메소드를 포함
- 추상 메소드는 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메소드, 추상 메소드를 포함한 추상 클래스를 상속받는 자식 클래스는 추상 메소드를 반드시 구현해야만 인스턴스를 생성할 수 있다
자바에서 추상 클래스와 추상 메소드를 사용하는 목적:
- 추상 클래스를 사용하여 다형성을 가지는 메소드의 집합을 정의할 수 있기 때문, 다형성은 객체 지향 프로그래밍에서 중요한 개념으로, 상속 관계에 있는 클래스들이 동일한 메소드를 가지고 있을 때, 각 클래스에서 메소드를 재정의하여 다양한 동작을 구현할 수 있다
- 추상 메소드를 사용하여 자식 클래스가 반드시 구현해야 하는 메소드를 정의할 수 있다. 추상 클래스를 상속받은 자식 클래스는 추상 메소드를 구현하지 않으면 컴파일 오류가 발생!!! => 추상 메소드를 구현하도록 강제할 수 있다. 이를 통해 모듈화된 코드를 재사용하고, 필요한 부분만을 재정의하여 사용함으로써 생산성을 향상
추상 클래스는 abstract 키워드를 사용하여 선언합니다. 추상 클래스는 동작이 정의되어 있지 않은 추상 메소드를 포함하고 있으므로, 인스턴스를 생성할 수 없음 + 추상 메소드는 자식 클래스에서 반드시 오버라이딩해야만 사용할 수 있는 메소드!
'의문점 공부하기 > 📌 Java' 카테고리의 다른 글
📌 자바 컨테이너란 무엇일까? (0) | 2023.06.19 |
---|---|
📌 final은 추상 클래스를 수정할 때 사용할 수 있을까? (0) | 2023.06.16 |
📌 인터페이스는 객체 사용 규칙을 정의한다 (0) | 2023.06.15 |
📌 추상 클래스에서 추상 메서드는 필수적인가? (0) | 2023.06.14 |
📌 String 클래스의 일반적인 메서드는 무엇이 있을까? (2) | 2023.06.13 |