domenica 5 luglio 2009

How To: implement an Interface

In questi esempi, due differenti modalità di implementare un interfaccia.

Test_A implementa ITest in modo classico.
Test_B implementa ITest Esplicitandola.


public interface ITest
{
string TestProperty {get; set;}
void TestMethod(string s);
}


public class Test_A : ITest
{

string _s;

//
// Implementazione "classica"
//
public string TestProperty
{
get{ return _s;}
set { _s = value;}
}

public void TestMethod(string s)
{
Console.Write(s);
}
}

public class Test_B : ITest
{

string _s;

//
// Implementazione "esplicita"
//
string ITest.TestProperty
{
get { return _s; }
set { _s = value; }
}

void ITest.TestMethod(string s)
{
Console.Write(s);
}
}

2 commenti:

guellaltro! ha detto...

Differenze tra un'implementazione e l'altra?

guesto! ha detto...

La domanda è più che lecita, ma merita un esempio approfondito.

E a tal proposito ho scritto questo nuovo post:

http://csharplight.blogspot.com/2009/07/how-to-implement-interface-part-2.html

che dovrebbe chiariti il dubbio!