![[C++] 추상 클래스(Abstract Class)와 인터페이스(Interface)의 차이점](//i1.daumcdn.net/thumb/C360x240/?fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdna%2FJdjZG%2FbtrN3VwXkhc%2FAAAAAAAAAAAAAAAAAAAAAGZZsl6MxjBlVK5JcTyKCvQhB70hxFAD6-4to2B13_FT%2Fimg.png%3Fcredential%3DyqXZFxpELC7KVnFOS48ylbz2pIh7yKj8%26expires%3D1761922799%26allow_ip%3D%26allow_referer%3D%26signature%3D1%252FjYseEqtF8B2hd6vo3qwoYC3%252Fc%253D) 
						
					
					
						[C++] 추상 클래스(Abstract Class)와 인터페이스(Interface)의 차이점
						
						
						추상 클래스란? - 추상클래스는 순수가상함수를 포함한 클래스입니다. 순수가상함수를 포함하고 있기 때문에 인스턴스화 즉, 객체를 생성할 수 없는 클래스입니다. 추상 클래스는 파생클래스에게 상속되는 형태로 사용됩니다. 인터페이스란? - 인터페이스는 구현없이 정의만을 해놓은 클래스입니다. JAVA와 C#은 Interface기능을 별도로 제공하지만 C++은 제공하지 않기에 추상 클래스를 순수 가상함수만으로 선언하여 Interface처럼 사용합니다. 인터페이스가 필요한 이유는? - 위에 설명만 들을 경우 굳이 추상 클래스와 인터페이스를 분류해놓을 필요가 없어 보이지만, 인터페이스의 진가는 다중 상속을할 때 나타납니다. #include using namespace std; class AbstractA { publi..