Interface, en C#, est un mot-clé qui contient un groupe de méthodes et de propriétés abstraites, qui doivent être implémentées ou utilisées par une classe abstraite ou non abstraite. La définition des méthodes sont des propriétés à l'intérieur d'une interface qui les rend publiques et abstraites par défaut.
En termes les plus simples, une interface est comme un contrat, où chaque membre ou composant inclus dans le corps doit suivre le contrat, il définit ce qui doit être fait. L'interface ne contient aucun champ et est toujours définie par l'utilisation du mot-clé « interface ».
Syntaxe :
La syntaxe commence par le mot-clé interface suivi du nom de l'interface, puis du corps.
interface <name_for_interface> { //abstract methods //abstract properties. }
Comme vous pouvez le voir, nous avons notre syntaxe standard pour Interface en C#, qui commence par le mot-clé 'interface' puis le nom de l'interface, puis les méthodes et propriétés abstraites à l'intérieur du corps. En C#, plusieurs interfaces peuvent être implémentées et utilisées, au sein d’une classe ou d’une structure. Ces interfaces peuvent contenir diverses méthodes, indexeurs, propriétés ainsi que des événements en tant que membres.
En gros, nous avons compris qu'il n'y a pas de fonctionnalité spécifique à l'intérieur d'une interface, si c'est le cas, alors pourquoi avons-nous besoin d'une interface ?
Quand utiliser Interface ?
public class MyClass : IMyInterface { public void Method1() { // Method implementation }public string Property1 { get; set; } public event EventHandler Event1; }
Maintenant que nous avons compris ce qu'est l'interface et sa nécessité. Montrons un exemple simple de code C# avec implémentation d'interface.
Le programme implémente l'interface et imprime une instruction simple.
Code :
using System; namespace MyApplication { interface SampleInterface { void InterfaceMethod(); } class Int_Example : SampleInterface { public void InterfaceMethod() { Console.WriteLine("\nThis is simple example of Interface in C#."); } } class Program { static void Main(string[] args) { Int_Example myInterface = new Int_Example(); myInterface.InterfaceMethod(); Console.Read(); } } }
Interprétation du code : En commençant par l'utilisation et l'espace de noms, une interface de base est générée sous la forme d'une SampleInterface qui a une seule méthode dans son corps. Cette méthode à l’intérieur d’une interface n’a pas de corps particulier. Ensuite, nous avons notre nouvelle classe qui doit implémenter l'interface que nous avons créée. Créé avec le mot-clé class suivi du nom de la classe, puis implémentant l'interface avec le symbole deux-points suivi du nom de l'interface. Dans notre classe Int_Example, nous avons notre méthode d'interface créée précédemment, qui était alors sans corps, nous avons maintenant ajouté la simple instruction print, qui dit : « Ceci est un exemple simple d'interface en C#. »
Then begins our mail class, namely Program, with the static void main statement. Inside our main class, we have created a new object for our Int_Example class which inherits interface. The new object is created and to the next line, our method created earlier is called up. Finally, our newly created object will call the earlier created method and the body inside that method will be executed here. With Console.Read(); the program will wait for user input before exiting.
Output:
Upon successful compilation and execution, the program must simply print the statement: “This is a simple example of Interface in C#.”
Arithmetic operations using the interface.
Code:
using System; namespace arth_interface { public interface SampleInterface { void sam_add(int a, int b); void sam_sub(int a, int b); void display(); } class interface_class : SampleInterface { int x, y; public void sam_add(int a, int b) { int m, n; m = a; n = b; x = m + n; } public void sam_sub(int a, int b) { int m, n; m = a; n = b; y = a - b; } public void display() { Console.WriteLine("Added Value is:" + x); Console.WriteLine("Subtracted value is:" + y); } } class arth_interface { static void Main(string[] args) { interface_class obj_interface_class = new interface_class(); int fnumber, snumber; Console.WriteLine("Please Enter 1st Number to perform Addition and Subtraction:"); fnumber = Convert.ToInt16(Console.ReadLine()); Console.WriteLine("Now 2nd Number to perform Addition and Subtraction:"); snumber = Convert.ToInt16(Console.ReadLine()); obj_interface_class.sam_add(fnumber, snumber); obj_interface_class.sam_sub(fnumber, snumber); obj_interface_class.display(); Console.ReadKey(); } } }
Code Interpretation: Similar to our first example, we have used and namespace statements, followed by the interface and its body with methods. We have two basic methods for addition and subtraction with void as return type, two integers inside every method, respectively. Next, we have our class which implements our interface.
We’ve declared two integers and then we have our first method to calculate addition. Here is the operation that needs to be done for addition and the same is for the subtraction. Then we have our display method, which consists of two print statements, printing addition and subtraction values of the numbers passed.
Finally, we have our class with the main method, where we initially created an object for our interface. Then the program prints “Please Enter the 1st Number to perform Addition and Subtraction:”, where the user inputs a first number and the later second number, for the purpose of calculations. With the object created earlier, the program calls the add and sub-methods from the interface and the same operations are done. At last, we have our display method, which displays our results as defined in the display method and ReadKey(); method holds up our program until any key is pressed.
Output:
Below are some of the advantages given.
We have understood what Interface in C# is. The proper syntax for an interface along with an explanation. To wrap it up, Interfaces in C# are a way to fill the emptiness of multiple inheritances in the language. Later we learned why do we actually need the interface in C# followed by the examples to demonstrate the understanding of the interfaces. The first example was to demonstrate simple use of interface while with the second example we implemented arithmetic operations, followed by Code Interpretation and output screenshot.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!