rozhraní (C#-Reference)
Rozhraní obsahuje pouze podpisy metody, Vlastnosti, události nebo indexování.Třídy nebo struktura, která implementuje rozhraní, musí implementovat členy rozhraní, které jsou určeny v definici rozhraní.Následující příklad třídy ImplementationClass musí implementovat metodu pojmenovanou SampleMethod , nemá žádné parametry a vrací void.
Další informace a příklady naleznete v tématu Rozhraní (Příručka programování C#).
Příklad
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();
}
}
Rozhraní může být členem oboru názvů nebo třídy a může obsahovat podpisy následující členy:
Rozhraní může dědit z jedné nebo více základních rozhraní.
Základní typ seznamu obsahuje základní třídy a rozhraní, musí pocházet základní třídy, v seznamu první.
Třída, která implementuje rozhraní explicitně implementovat členy rozhraní.Explicitně implementované člena nelze přistupovat prostřednictvím instance třídy, ale pouze prostřednictvím instance rozhraní.
Další podrobnosti a příklady kódu na explicitní implementace rozhraní, viz Explicitní implementace rozhraní (Příručka programování C#).
Příklad implementace rozhraní.V tomto příkladu obsahuje rozhraní deklarace vlastnosti a třídy provádění.Libovolnou instanci třídy, která implementuje IPoint má vlastnosti celé x a y.
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);
}
}
// Output: My Point: x=2, y=3
Specifikace jazyka C#
Další informace naleznete v tématu Specifikace jazyka C#. Specifikace jazyka je úplným a rozhodujícím zdrojem pro syntaxi a použití jazyka C#.
Viz také
Referenční dokumentace
Rozhraní (Příručka programování C#)
Pomocí vlastnosti (Příručka programování C#)
Pomocí indexování (Příručka programování C#)
Rozhraní (Příručka programování C#)