프로그래밍 언어/Javascript & firebase
(2023.12.20) 추상클래스와 인터페이스
잡사전집사
2023. 12. 21. 03:45
반응형
추상클래스란?
정의
추상 클래스는 클래스와 다르게 인스터스화가 불가능한 클래스를 말합니다.
추상 클래스가 존재하는 이유
☑︎ 추상 클래스의 목적은 상속을 통해 자식 클래스에서 메서드를 제각각 구현하도록 강제를 하는 용도입니다.'
☑︎ 핵심 기능의 구현은 전부 자식 클래스에게 위임을 하는 것을 말합니다.
인터페이스란?
☑︎ 인터페이스는 TypeScript에서 객체의 타입을 정의하는데 사용을 합니다.
☑︎ 인터페이스는 객체가 가져야 하는 속성과 메서드를 정의합니다.
☑︎ 인터페이스를 사용하면 코드의 안정성을 높이고 유지 보수성을 높일 수 있습니다.
추상 클래스와 인터페이스의 차이
☑︎ 구현부 제공 여부
- 추상 클래스
- 클래스의 기본 구현을 제공합니다.
- 인터페이스
- 객체의 구조만을 정의하며, 기본 구현을 제공을 하지 않습니다.
☑︎ 상속 메커니즘
- 추상 클래스
- 단일 상속만 지원을 합니다.
- 인터페이스
- 다중 상속을 지원합니다.
- 하나의 클래스는 여러 인터페이스를 구현이 가능합니다.
☑︎ 구현 메커니즘
- 추상 클래스
- 추상 클래스를 상속받은 자식 클래스는 반드시 추상 함수를 구현을 해야 합니다.
- 인터페이스
- 인터페이스를 구현하는 클래스는 인터페이스에 정의된 모든 메서드를 전부 구현해야 합니다.
반응형