📜  在结构中实现接口的 C# 程序

📅  最后修改于: 2022-05-13 01:54:24.106000             🧑  作者: Mango

在结构中实现接口的 C# 程序

结构 是一个值类型,是单个单元下不同数据类型的变量的集合。它几乎类似于一个类,因为两者都是用户定义的数据类型,并且都拥有一堆不同的数据类型。我们可以使用 struct 关键字创建结构。结构还可以包含构造函数、常量、字段、方法、属性、索引器和事件等。

句法:

public struct 
{
    // Fields
    // Methods
}

接口就像一个类,它也可以有方法、属性、事件和索引器作为它的成员。但是接口只能有成员的声明。接口成员的实现将由隐式或显式实现接口的类给出。或者我们可以说它是类的蓝图。

语法

interface interface_name
{
    // Method Declaration in interface
}

现在给定两个接口,现在我们的任务是在一个结构中实现这两个接口。

方法:

  • 创建两个名为 interface1 和 interface2 的接口,其中包含方法声明。
  • 创建一个实现这些接口的结构。
struct GFG : interface1, interface2
{
    // Method definition for interface method
    // Method definition for interface method
}
  • 在 GFG 结构中编写两个接口的方法定义。
  • 在 main 方法中,创建名为 M1 和 M2 的两个对象。
  • 使用 M1 和 M2 对象调用 interface1 和 interface2 的方法并显示输出。

例子:

C#
// C# program to illustrate how to implement
// interface in a structure
using System;
 
// Interface 1
interface interface1
{
     
    // Declaration of Method
    void MyMethod1();
}
 
// Interface 2
interface interface2
{
     
    // Declaration of Method
    void MyMethod2();
}
 
// Structure which implement interface1
// and interface2
struct GFG : interface1, interface2
{
     
    // Method definitions of interface 1
    void interface1.MyMethod1()
    {
        Console.WriteLine("interface1.Method() is called");
    }
     
    // Method definitions of interface 2
    void interface2.MyMethod2()
    {
        Console.WriteLine("interface2.Method() is called");
    }
}
 
class Geeks{
 
// Driver code   
public static void Main(String[] args)
{
     
    // Declare interfaces
    interface1 M1;
    interface2 M2;
     
    // Create objects
    M1 = new GFG();
    M2 = new GFG();
     
    M1.MyMethod1();
    M2.MyMethod2();
}
}


输出:

interface1.Method() is called
interface2.Method() is called