어제는 객체 지향 프로그래밍(OOC)과 가장 중요한 개념인 객체와 클래스를 중점적으로 다뤄봤었다. 오늘은 이어서 인터페이스(Interface)에 대해서 배웠는데, 인터페이스는 USB 포트와 같이 클래스를 정의할 때 일종의 규격을 만드는 기능이다. 클래스 상속과 사용 방법은 거의 동일하다. 이러면 클래스와 다를 게 뭔가 의문점이 든다. 인터페이스를 쓰는 이유를 크게 3가지로 볼 수 있다. 다중 상속 가능 (클래스는 안 됨) 클래스 정의 시 일정한 규격의 변수 지정을 강제할 수 있음 객체정보 간소화 클래스는 다이아몬드 문제를 피하기 위해 다중 상속이 안되지만, 인터페이스는 일종의 다중 상속과도 같은 기능을 구현해 볼 수 있다. 다이아몬드 문제 관련글: https://velog.io/@soongle/c-%EB..