سلام
امروز می خوام کلاس های گنگ یا Abstract رو بگم برات
خب
اول ا ز همه بگم که این بحث ادامه بحث وراثت هست! یه مدت به یه سری بحث های دیگه رفتم که الان روباره ادامه وراثت رو می رم
اگه یادت باشه وقتی که می خواستیم یه کلاس رو از یک کلاس دیگه مشتق بگیریم مجبور بودیم برای این که خاصیت های کلاس پایه رو تغییر بدیم و اون چیزی رو که می خوایم تو کلاس مشتق شده بیاریم! و باید override می کردیم و کار های دیگه!
ولی فاییده کلاس های Abstract اینه که مثل کلاس های معمولی احتیاجی نیست که متد ها رو تعریف کنیم! بلکه فقط اسم متد رو میاریم و هر کلاسی رو که بخوایم ازش مشتق گیری جدا جدا متد ها رو برای کلاس مشتق شده استفاده می کنیم!
نکته خیلی مهم اینه که از کلاس های Abstract نمیشه Object ساخت و ازشون نمونه گیری کرد
توجه کنیم که متد های Abstract حتماً باید تو کلاس های Abstract تعریف بشن
توی کلاس های Abstract : properties , methods, fields می تونن تعریف بشن!
مثال
abstract class Vehicles
abstract class Vehicles
{
private int noOfWheel;
private string color;
public abstract string Engine
{
get;
set;
}
public abstract void Accelerator();
}
مثل:
Class Car : Vehicles
{
public override string Engine
{
get
{
...
..
.
return Engine ;
}
set
{
...
..
.
Engine = value ;
}
}
public override Void Accelerator()
{
...
..
.
}
...
{
public override string Engine
{
get
{
...
..
.
return Engine ;
}
set
{
...
..
.
Engine = value ;
}
}
public override Void Accelerator()
{
...
..
.
}
...
}
موفق و مؤید و پیروز باشی!
Blogged with the Flock Browser
سلام
پاسخحذفمن یکی از بچه های کلاسم که خیلی از وبلاگت استفاده کردم
گفتم تشکر کنم خسته گی ت در بره !
سلام ممنونم از زحماتتون .من فردا امتحان دارم و این توضیحتون خیلی به دردم خورد.
پاسخحذف