الان منو ندیده بگیرین :دينقل قول:
به جای ارث بری چندگانه ی ++C تو زبونایی مثل #C اضافه شده .
مثلا تو سی شارپ کلاس ها می تونن از حد اکثر یک کلاس دیگر ارث ببرن ولی می تونن از تعداد نا محدودی از interfaceها ارث ببرن. کاری که interfaceها انجام می دهن کلاسها را ملزم به پیاده سازی متدها و خاصیتهای interfaceهای به ارث برده شده می کنن.
کلا بحث پیچیده ایه [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]نقل قول:
interface ها تفاوت عمده ای که با class ها دارند این هست که ما متد های کلاس را در خود کلاس پیاده سازی می کنیم ولی در interface نمی توانیم متد های آن را پیاده سازی کنیم.
دو تفاوت دیگر اینه که نمی توانیم access modifier یی همچون public، privateو ... نمی توانیم برای متد ها تعیین کنیم. تفاوت دیگر این است که در interface ها هیچ فیلدی (متغیری) نمی توانیم تعریف کنیم.
[php]
public interface IPrintable {
void Print();
}
public class MyClass1 : IPrintable {
#region IPrintable Members
public void Print() {
Console.WriteLine("MyClass1 print method called");
}
#endregion
}
public class MyClass2 : IPrintable {
#region IPrintable Members
public void Print() {
Console.WriteLine("MyClass2 print method called");
}
#endregion
}
------------------------
private static void PrintClassInfo(IPrintable prn) {
prn.Print();
}
PrintClassInfo(new MyClass1());
Console.ReadLine();
PrintClassInfo(new MyClass2());
Console.ReadLine();
[/php]