PDA

View Full Version : پیاده سازی اینترفیس . وقتی نام مشترکی با کلاس دارد



JaguarXF
دوشنبه 25 خرداد 1388, 01:00 صبح
یک پراپرتی پابلیک دارم داخل کلاسم که گفته شده نباید آنرا تغییر بدهم.
یک اینترفیس هم جدیدا تعریف شده و این کلاس هم اونرو پیاده سازی میکنه که این اینترفیس هم یک پراپرتی دارد دقیقا به همون اسم پراپرتی موجود در کلاس.
الان چکار باید بکنم که این دو نام با هم غاطی نشوند؟

JaguarXF
دوشنبه 25 خرداد 1388, 01:23 صبح
فکر میکنم جوابم این باشد
http://msdn.microsoft.com/en-us/library/aa288461(VS.71).aspx
ولی این گفته است که دوتا اینترفیس . مثلا متدهای هم نام داشته باشند
سوال من قدری متفاوت هست : اینترفیس و کلاسی که آنرا پیاده سازی میکند دارای متد یا پراپرتی هم نام هستند و اجازه دستکاری متد یا پراپرتی کلاس رو هم ندارم

ASKaffash
دوشنبه 25 خرداد 1388, 09:57 صبح
سلام
فکر کنم جواب اینطوری است :


public class MyClass
{
public string MyProperty
{ set; get; }
}
public interface Myinterface
{
string MyProperty
{ set; get; }
}
public class MyNewClass : MyClass, Myinterface
{
public string MyProperty
{ set; get; }
}
public class TestClass
{
public void MyMethod()
{
MyNewClass m = new MyNewClass();
m.MyProperty = "MyClass Property";
((MyClass)m).MyProperty = "MyNewClass Property";
System.Windows.Forms.MessageBox.Show(m.MyProperty + " / " + ((MyClass)m).MyProperty);
}
}