, . , , . , ,
. C# interface.
. . , . , , . , . , .
(.. ) , . . , -. . , , , . C# : .
interface. .
interface {
_ _1 (_); _ _2 [_);
//...
_ _(_);
}
. _ . , , . , . , . , .
, .
public interface ISeries {
int GetNextO; // void Reset(); //
void SetStart(int ); //
}
ISeries. I , , - . ISeries public .
, , . 15, - , . . , . , static.
|
|
, . , . .
class _: _ {
//
}
_ . , . , .
. . . , .
, , public. , , . , , .
, ISeries. ByTwos, , .
// ISeries, class ByTwos: ISeries { int start; int val;
public ByTwos () {
start = 0; val = 0;
}
public int GetNext() { val += 2; return val;
}
public void Reset() {
val = start;
}
public void SetStart(int x) { start = x; val = start;
, ByTwos , ISeries. , , .
, ByTwos, ISeries.
// ByTwos, , using System;
class SeriesDemo { static void Main() {
ByTwos ob = new ByTwos(); /
for (int i=0; i < 5; i++)
Console.WriteLine (" " + ob. GetNext ());
Console.WriteLine(""); ob.Reset();
for(int i=0; i < 5; i++)
Console.WriteLine(" " + ob.GetNext());
Console.WriteLine(" 100");
Ob.SetStart(100);
for(int i=0; i < 5; i++)
Console.WriteLine(" " + ob.GetNext());
}
}
SeriesDemo, , ISeries, ByTwos SeriesDemo. . , ISeries. cs, ByTwos. cs SeriesDemo. cs, :
|
|
>csc SeriesDemo.cs ISeries.cs ByTwos.cs
Visual Studio #. , ( ) . .