کلاس sealed نوعی از کلاس است که امکان ارث بری از آن وجود ندارد : public sealed class Human { .... } public class employed:Human X ==> نمی توان ازین کلاس ارث بری کرد
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
public sealed class Human
{
....
}
public class employed:Human X ==> نمی توان ازین کلاس ارث بری کرد
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
حالت 2 :
یکی دیگر از راه های دسترسی به کلاس پایه از طریق کلاس مشتق این روش می باشد که در پایین ان را توضیح داده ایم :
فرض کنید کلاس Student از کلاس Human مانند مثال قبل ارث بری کرده است:
public class Student:Human
{
.
.
.
public Override int GetNameLengh() =>base.GetNameLength()+this.StudentCode.length;
}
این متد نیز دقیقا همان کار متد حالت1 را می کند .
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
کلاس هایی هستند که می توان از آن ها ارث بری کرد اما نمی توان از آن ها Object ساخت.
معمولا کلاس هایی که به صورت Abstract تعریف می شوند که در آینده نیاز به توسعه ی اساسی و گستره دارند و این کلاس ها بیشتر نقش پایه و چارچوب سایر کلاس ها را بر عهده دارند.
به مثال زیر توجه کنید :
public Abstract class Human
{
....
}
public class Student:Human ==> مشکلی پیش نمی آید
{
....
}
Human h=new Human(); X ==> از این نوع کلاس نمی توان نمونه ساخت
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
برچسب:
نویسنده: پویا فراهانی
مثال : برنامه ای بنئیسید که مقدار شعاع 5 دایره را در یک لیست عددی درج کرده و سپس 5 Object دایره را با مقادیر ثبت شده در لیست ایجاد کرده مجموع محیط و مساح دایره را به تفکیک محاسبه کرده و باز گرداند :
List radius= new List ();
radius.Add(1);
radius.Add(2);
radius.Add(3);
radius.Add(4);
radius.Add(5);
int sumarea=0;
int sumsorface=0;
foreach(int n in radius)
{
Circle c=new Circle();
c.setradius(n);
sumarea += c.area();
sumsorface +=c.surface();
}
برچسب:
نویسنده: پویا فراهانی
برچسب: استفاده,
نویسنده: پویا فراهانی
برچسب: سربارگذاری,
نویسنده: پویا فراهانی