본문 바로가기
개발/개념정리

[자바] 객체지향 특징(2) - 추상화. 인터페이스,추상클래스 차이점

by 신앉아영 2024. 4. 11.
반응형

1. 추상화

1.1 정의

클래스 공통 특성(변수, 메서드)를 묶어서 표현

즉, 인터페이스 추상클래스를 생성하는 것으로 역할을 정의함.

 

1.2 사용 이유

중복 코드가 줄어들어 코드가 간결해짐.

생산성, 가독성증가. 오류 감소. 유지보수 시간 단축 등.

 

 

2. 추상클래스 vs 인터페이스

2.1 공통점

- 코드의 중복과 유지보수를 위해 사용 -> 결합도가 낮은 코드 만듦.

- 추상메서드의 구현을 강제.

- 자신을 인스턴스로 생성 불가능.

 

2.2 차이점 (추상클래스)

다중상속 불가능.

- 생성자, 일반 변수 가질 수 있음.

- 상속받는 클래스는 추상메서드만 구현해도 됨.

- extends 사용

 

2.3 차이점 (인터페이스)

- 다중 상속 가능.

- 추상 메서드만 사용 가능.

- 생성자, 일반 변수 사용 불가능.

- 상속받은 클래스는 반드시 인터페이스 내 모든 메서드를 구현해야함 ***

- implements 사용

반응형