반응형

Interface 2

추상 클래스(abstract class)와 인터페이스(interface)의 차이

추상 클래스(abstract class)와 인터페이스(interface)는 C++의 두 가지 OOP 개념입니다. 차이점은 다음과 같습니다. 정의 : 추상 클래스(abstract class)는 인스턴스화를 할 수 없고 서브 클래싱되도록 의도된 클래스입니다. 인터페이스(interface)는 하위 클래스가 따를 계약을 지정하는 순수 가상 클래스입니다. 상속 : 추상 클래스(abstract class)는 다른 클래스 및 인터페이스에서 상속할 수 있지만, 인터페이스(interface)는 다른 인터페이스에서만 상속할 수 있습니다. 구현 : 추상 클래스(abstract class)는 추상 메서드와 구체적인 메서드를 모두 포함할 수 있지만, 인터페이스(interface)는 추상 메서드만 포함할 수 있습니다. 구체적인 ..

공부/C++ 2023.01.31

인터페이스(interface)의 개념

1. 인터페이스란? 인터페이스는 특정 기능을 구현할 것을 약속한 추상 형식을 말합니다. Java나 C# 등의 다른 객체 지향 언어에서는 인터페이스 형식을 제공하지만, C++언어에서는 인터페이스 형식을 제공하지는 않지만 순수 가상 메서드를 이용하여 정의할 수 있습니다. 인터페이스는 멤버 필드나 구체적으로 구현한 메서드를 갖지 않고 특정 기능을 약속한 메서드만 갖습니다. 그리고 모든 멤버는 사용하는 개발자와의 약속으로 모든 멤버를 public으로 접근 지정합니다. C++ 언어에서는 구조체(struct)의 기본 값이 public 이여서 구조체를 이용하여 인터페이스를 정의하는 이들도 많습니다. 물론 클래스(class)를 통해서 인터페이스를 만들 수 있습니다. 아래 예제는 구조체와 클래스를 이용하여 인터페이스의 ..

공부/C++ 2023.01.25
반응형