개발놀이터

면접 준비 : 추상클래스와 인터페이스 본문

CS 지식/면접준비

면접 준비 : 추상클래스와 인터페이스

마늘냄새폴폴 2022. 6. 28. 00:23

Q. 추상 클래스와 인터페이스의 차이점에 대해 설명해주세요
A. 인터페이스는 다중상속이 가능하고, 내부 인스턴스를 둘 수 없으며 필드 선언 시 public static final로 정의해야 합니다. 그 이유는 인터페이스는 그 자체로 인스턴스화 할 수 없기 때문입니다. 따라서 메모리에 할당되는 시점 즉 초기화 시점에 할당해야 하는데, 해당 방식은 static으로만 가능합니다. 추상 클래스는 다중상속이 불가능하고, 내부 인스턴스 및 필드를 자유롭게 정의할 수 있습니다. 추상 메서드가 한개이상 존재하면 되기 때문에 메서드의 일부 구현이 가능합니다. 이러한 것을 Template Method 패턴이라고 합니다. 내부 인스턴스 및 필드를 가질  수 있고 protected와 private 메서드나 필드 등을 가질 수 있어 하위 클래스나 다른 클래스에 이를 숨길 수 있습니다. 

 

https://coding-review.tistory.com/115

 

추상클래스와 인터페이스

도입 GOF 디자인 패턴 중 템플릿 메서드 패턴을 공부하던 중에 공통 로직인 AbstractTemplate를 구성하는 요소중 abstract라는 키워드를 발견하게 되었고 이에 대해 검색을 했더니 기능이 인터페이스랑

coding-review.tistory.com

 

'CS 지식 > 면접준비' 카테고리의 다른 글

면접 준비 : 전략 패턴  (0) 2022.07.06
면접 준비 : 템플릿 메서드 패턴  (0) 2022.07.01
면접 준비 : OOP  (0) 2022.06.24
면접 준비 : 스프링 AOP  (0) 2022.06.23
면접 준비 : 트랜잭션  (0) 2022.06.21