>  기사  >  백엔드 개발  >  [c# 튜토리얼] C# 인터페이스(인터페이스)

[c# 튜토리얼] C# 인터페이스(인터페이스)

黄舟
黄舟원래의
2016-12-24 13:44:411353검색

C# 인터페이스

인터페이스는 인터페이스를 상속할 때 모든 클래스가 따라야 하는 구문 계약을 정의합니다. 인터페이스는 구문 계약의 "무엇" 부분을 정의하고 파생 클래스는 구문 계약의 "어떻게" 부분을 정의합니다.

인터페이스는 인터페이스의 멤버인 속성, 메서드 및 이벤트를 정의합니다. 인터페이스에는 멤버 선언만 포함됩니다. 멤버 정의는 파생 클래스의 책임입니다. 인터페이스는 파생 클래스가 따라야 하는 표준 구조를 제공합니다.

추상 클래스는 인터페이스와 어느 정도 유사하지만 기본 클래스에서 선언하고 파생 클래스에서 구현하는 메서드가 몇 개만 있는 경우에만 주로 사용됩니다.

인터페이스 선언

인터페이스는 클래스 선언과 유사한 인터페이스 키워드를 사용하여 선언됩니다. 인터페이스 선언은 기본적으로 공개됩니다. 다음은 인터페이스 선언의 예입니다.

public interface ITransactions
{
   // 接口成员
   void showTransaction();
   double getAmount();
}

다음 예는 위 인터페이스의 구현을 보여줍니다.

using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace InterfaceApplication
{

   public interface ITransactions
   {
      // 接口成员
      void showTransaction();
      double getAmount();
   }
   public class Transaction : ITransactions
   {
      private string tCode;
      private string date;
      private double amount;
      public Transaction()
      {
         tCode = " ";
         date = " ";
         amount = 0.0;
      }
      public Transaction(string c, string d, double a)
      {
         tCode = c;
         date = d;
         amount = a;
      }
      public double getAmount()
      {
         return amount;
      }
      public void showTransaction()
      {
         Console.WriteLine("Transaction: {0}", tCode);
         Console.WriteLine("Date: {0}", date);
         Console.WriteLine("Amount: {0}", getAmount());

      }

   }
   class Tester
   {
      static void Main(string[] args)
      {
         Transaction t1 = new Transaction("001", "8/10/2012", 78900.00);
         Transaction t2 = new Transaction("002", "9/10/2012", 451900.00);
         t1.showTransaction();
         t2.showTransaction();
         Console.ReadKey();
      }
   }
}

위 코드가 컴파일되고 실행되면 다음과 같은 결과가 나옵니다.

Transaction: 001
Date: 8/10/2012
Amount: 78900
Transaction: 002
Date: 9/10/2012
Amount: 451900

위 내용은 [c# 튜토리얼] C# 인터페이스(인터페이스) 내용입니다. 자세한 내용은 PHP 중국어를 참고해주세요. 홈페이지(www.php.cn)!


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.