English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C# 인터페이스가 자식 클래스와 외부 클래스에서 호출되는 방법 예제

이 문서는 C# 인터페이스가 도입 클래스와 외부 클래스에서 호출되는 방법을 설명합니다. 여러분과 공유하고, 다음과 같이 참고하십시오:

C# 인터페이스는 interface 키워드를 사용하여 생성되며, 인터페이스에는 속성, 메서드 등 멤버 변수가 포함될 수 있습니다. 인터페이스 도입 클래스는 인터페이스 내의 메서드를 구현할 수 있습니다. 하나의 클래스는 여러 인터페이스를 상속하여 이 인터페이스 내의 메서드를 구현할 수 있으며, 하나의 인터페이스는 여러 클래스를 도입하여 인터페이스 내의 메서드를 구현할 수 있습니다. 인터페이스 도입 클래스에서는 인터페이스 내의 메서드를 직접 호출할 수 있습니다.

도입 클래스에서 호출 예제:

//인터페이스
public interface IPersonalService
{
   //인터페이스 내의 메서드
   PersonalDTO QueryByUid(int uId);
}
//인터페이스 도입 클래스
public class PersonalService : IPersonalService
{
    //도입 클래스에서 인터페이스 메서드 구현--숨겨진 구현
    public PersonalDTO QueryByUid(int uId)
    {
      return _dal.QueryByUid(uId);
    }
    //도입 클래스에서 인터페이스 메서드 호출
    public void GetInfo(int userId)
    {
      //콜 방법 1
      IPersonalService p = new PersonalService();
      PersonalDTO dto = p.QueryByUid(userId);
      //호출 방법 두 번째
      PersonalService p2 = new PersonalService();
      IPersonalService p3 = (IPersonalService)p2;
      PersonalDTO dto = p3.QueryByUid(userId);
    }
}

외부 클래스에서 인터페이스의 메서드를 호출할 때는 인터페이스가 있는 네임스페이스를 참조한 후의 단계가 인터페이스의 상속된 클래스에서 호출하는 방식과 동일합니다.

외부 클래스에서 인터페이스가 있는 네임스페이스를 참조하여 인터페이스 타입의 속성을 선언하면 인터페이스를 호출할 수 있습니다. 예를 들어, 다음과 같습니다.

public IPersonalService pService{get;set;}
public void getInfo()
{
    pService.getInfo();
}

C# 관련 내용에 더 많은 관심을 가진 독자는 다음 특집을 확인할 수 있습니다: 《C# 데이터 구조와 알고리즘 튜토리얼》、《C# 순회 알고리즘과 기술 요약》、《C# 스레드 사용 기술 요약》、《C# 일반 컨트롤러 사용 튜토리얼》、《WinForm 컨트롤러 사용 요약》、《C# 배열 작업 기술 요약》 및 《C# 오브젝트 지향 프로그래밍 입문 튜토리얼》

본 문서에서 설명된 내용이 모두 여러분의 C# 프로그램 설계에 도움이 되길 바랍니다.

언급: 본문은 인터넷에서 수집되었으며, 저작권자는 모두 소유합니다. 내용은 인터넷 사용자가 자발적으로 기여하고 업로드한 것이며, 웹사이트는 소유권을 가지지 않으며, 인공적인 편집을하지 않으며, 관련 법적 책임을 부담하지 않습니다. 저작권 문제가 있는 내용을 발견하면 notice#w로 이메일을 보내 주세요.3codebox.com에 대한 신고를 보내시면 (#을 @으로 변경해 주세요) 관련 증거를 제공하시면, 사이트는 즉시 위반 내용을 삭제합니다.

추천해드립니다