Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C# - Interfaces

Een interface wordt gedefinieerd als een syntactisch contract dat alle klassen die de interface erven, moeten volgen. De interface definieert het 'wat' een deel van het syntactische contract en de afgeleide klassen definiëren het 'hoe' onderdeel van het syntactische contract.

Interfaces definiëren eigenschappen, methoden en gebeurtenissen, die de leden van de interface zijn. Interfaces bevatten alleen de verklaring van de leden. Het is de verantwoordelijkheid van de afgeleide klasse om de leden te definiëren. Het helpt vaak bij het bieden van een standaardstructuur die de afgeleide klassen zouden volgen.

Abstracte klassen hebben tot op zekere hoogte hetzelfde doel, maar ze worden meestal gebruikt wanneer er maar een paar methoden door de basisklasse moeten worden gedeclareerd en de afgeleide klasse de functionaliteiten implementeert.

Interfaces declareren

Interfaces worden gedeclareerd met behulp van het interface-trefwoord. Het is vergelijkbaar met klassendeclaratie. Interface-instructies zijn standaard openbaar. Hieronder volgt een voorbeeld van een interfacedeclaratie −

public interface ITransactions {
   // interface members
   void showTransaction();
   double getAmount();
}

Voorbeeld

Het volgende voorbeeld demonstreert de implementatie van de bovenstaande interface −

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

namespace InterfaceApplication {
   
   public interface ITransactions {
      // interface members
      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();
      }
   }
}

Wanneer de bovenstaande code wordt gecompileerd en uitgevoerd, levert dit het volgende resultaat op −

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

C Taal

  1. De opdrachtregelinterface
  2. C#-interface
  3. Java-interface
  4. Java Collections Framework
  5. Java-verzamelingsinterface
  6. Java NavigableSet-interface
  7. Java Lambda-expressies
  8. Interface naar draadloze opritsensor
  9. Java - Interfaces
  10. Interfaces in C++ (abstracte klassen)
  11. Java 9 - Privé-interfacemethoden