C#接口

王朝百科·作者佚名  2010-05-16  
宽屏版  字体: |||超大  

接口(C# 参考)

接口只包含只有方法,属性,索引器(有参属性),事件四种成员。方法的实现是在实现接口的类中完成的,如下面的示例所示:

interface ISampleInterface

{

void SampleMethod();

}

class ImplementationClass : ISampleInterface

{

// Explicit interface member implementation:

void ISampleInterface.SampleMethod()

{

// Method implementation.

}

static void Main()

{

// Declare an interface instance.

ISampleInterface obj = new ImplementationClass();

// Call the member.

obj.SampleMethod();

}

}

---------------------------------------------------------------------------------------------------------

备注:

接口可以是命名空间或类的成员,并且可以包含下列成员的签名:

·方法

·属性

·索引器

·事件

一个接口可从一个或多个基接口继承。

当基类型列表包含基类和接口时,基类必须是列表中的第一项。

实现接口的类可以显式实现该接口的成员。显式实现的成员不能通过类实例访问,而只能通过接口实例访问。

---------------------------------------------------------------------------------------------------------

示例:

下面的示例演示了接口实现。在此例中,接口 IPoint 包含属性声明,后者负责设置和获取字段的值。Point 类包含属性实现。

// keyword_interface_2.cs

// Interface implementation

using System;

interface IPoint

{

// Property signatures:

int x

{

get;

set;

}

int y

{

get;

set;

}

}

class Point : IPoint

{

// Fields:

private int _x;

private int _y;

// Constructor:

public Point(int x, int y)

{

_x = x;

_y = y;

}

// Property implementation:

public int x

{

get

{

return _x;

}

set

{

_x = value;

}

}

public int y

{

get

{

return _y;

}

set

{

_y = value;

}

}

}

class MainClass

{

static void PrintPoint(IPoint p)

{

Console.WriteLine("x=[0], y=[1]", p.x, p.y);// 把[] 改成 {}

}

static void Main()

{

Point p = new Point(2, 3);

Console.Write("My Point: ");

PrintPoint(p);

}

}

输出

My Point: x=2, y=3

 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝百科 版权所有