Computer >> 컴퓨터 >  >> 프로그램 작성 >> C#

C#에서 인터페이스와 추상 클래스의 차이점은 무엇입니까?

<시간/>

인터페이스는 인터페이스의 구성원인 속성, 메서드 및 이벤트를 정의합니다. 인터페이스에는 멤버 선언만 포함됩니다. 멤버를 정의하는 것은 파생 클래스의 책임입니다.

추상 클래스는 어느 정도 동일한 목적을 수행하지만 기본 클래스에서 몇 가지 메서드만 선언하고 파생 클래스가 기능을 구현하는 경우에 주로 사용됩니다.

다음은 차이점입니다 -

  • 클래스는 하나 이상의 인터페이스를 상속할 수 있는 반면 클래스는 하나의 추상 클래스만 상속할 수 있습니다.

  • 다중 상속은 Abstract를 사용하여 달성할 수 없지만 Interface를 사용하면 달성할 수 있습니다.

  • 인터페이스는 추상 클래스의 경우 정의되지만 필드는 정의할 수 없습니다.

  • 인터페이스에는 기본적으로 모든 것이 공개되어 있기 때문에 인터페이스에는 public, private, protected, internal 등의 액세스 수정자가 없습니다.