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

Java 및 C#의 인터페이스와 추상 클래스의 차이점 - 2020 - 다른 사람


이 게시물에서는 Java와 C#에서 추상 클래스와 인터페이스의 차이점을 이해합니다.

추상 클래스

  • 선언 및 정의 부분이 포함되어 있습니다.

  • 다중 상속은 추상 클래스를 사용하여 구현할 수 없습니다.

  • 생성자가 포함되어 있습니다.

  • 일부 정적 멤버를 포함할 수도 있습니다.

  • public, private, protected와 같은 여러 유형의 액세스 수정자를 포함할 수 있습니다.

  • 추상 클래스의 성능은 빠르기 때문에 매우 좋습니다.

  • 클래스의 핵심 ID/기능을 구현하는 데 사용됩니다.

  • 클래스는 하나의 추상 클래스만 사용할 수 있습니다.

  • 많은 구현이 동일하고 공통 동작이 있는 경우 추상 클래스를 사용하는 것이 좋습니다.

  • 추상 클래스에는 메서드, 필드, 상수가 포함됩니다.

  • 완전히 구현되거나 부분적으로 구현되거나 구현되지 않을 수도 있습니다.

인터페이스

  • 선언 부분만 포함합니다.

  • 인터페이스를 사용하여 다중 상속이 가능합니다.

  • 생성자가 없습니다.

  • 정적 멤버를 포함하지 않습니다.

  • 인터페이스의 모든 항목이 공개로 간주되므로 공개 액세스 수정자가 포함되어 있습니다.

  • 인터페이스 성능이 좋지 않습니다.

  • 해당 클래스에서 실제 메소드를 찾는 데 시간이 필요하기 때문에 느립니다.

  • 클래스의 주변 능력을 구현하는 데 사용됩니다.

  • 다중 인터페이스를 사용할 수 있습니다.

  • 여러 구현이 메서드를 공유하는 경우 '인터페이스'를 사용할 수 있습니다.

  • 인터페이스에는 메서드만 포함될 수 있습니다.

  • 완전히 구현해야 합니다.