20-04-2013، 08:53 PM
(آخرین ویرایش: 15-05-2013، 07:45 PM، توسط Mohsen Omidvar.)
ارث بری :
در این بخش کلاسی به نام کلاس پایه در نظر میگیریم و بقیه کلاسها از این کلاس مشتق می شوند ،یعنی برخی از داده های کلاس پایه(Base)به کلاس فرزند(Drived)به ارث می رسد،عناصر خصوصی پدر؛ خصوصی باقی می ماند و به فرزندان به ارث نمی رسد.
داده های محافظت شده :
عناصری که به صورت محافظت شده و در کلاس پدر تعریف می شوند فقط به فرزندان این کلاس به ارث می رسند یعنی از main قابل دسترسی نیستند.
عناصر عمومی :
عناصر عمومی هم به کلاس فرزندان به ارث می رسند و هم از main قابل دسترسی می باشند.
روشهای ارث بری:
در روشهای ارث بری حافظه به طور چشم گیری کاهش می یابد یعنی بعضی از متغییرها یکبار در کلاس پایه تعریف می شوند و در کلاس فرزند نیاز به تعریف نمی باشند .
مثال :
کلاسی به نام مستعطیل تعریف کنید، سپس کلاس مکعب را از مستعطیل به ارث ببرید
مساحت و محیط مستطیل، مساحت و حجم مکعب رابه دست آورید :
در این بخش کلاسی به نام کلاس پایه در نظر میگیریم و بقیه کلاسها از این کلاس مشتق می شوند ،یعنی برخی از داده های کلاس پایه(Base)به کلاس فرزند(Drived)به ارث می رسد،عناصر خصوصی پدر؛ خصوصی باقی می ماند و به فرزندان به ارث نمی رسد.
داده های محافظت شده :
عناصری که به صورت محافظت شده و در کلاس پدر تعریف می شوند فقط به فرزندان این کلاس به ارث می رسند یعنی از main قابل دسترسی نیستند.
عناصر عمومی :
عناصر عمومی هم به کلاس فرزندان به ارث می رسند و هم از main قابل دسترسی می باشند.
روشهای ارث بری:
در روشهای ارث بری حافظه به طور چشم گیری کاهش می یابد یعنی بعضی از متغییرها یکبار در کلاس پایه تعریف می شوند و در کلاس فرزند نیاز به تعریف نمی باشند .
مثال :
کلاسی به نام مستعطیل تعریف کنید، سپس کلاس مکعب را از مستعطیل به ارث ببرید
مساحت و محیط مستطیل، مساحت و حجم مکعب رابه دست آورید :
کد:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
class rect
{
protected int x, y;
public void set1(int a, int b)
{
x = a;
y = b;
}
private void masahat()
{
int s = x * y;
Console.WriteLine("masahat =" + s.ToString());
}
public void mohit(){
int s=(x+y)*2;
Console.WriteLine("mohit =" + s.ToString());
}
class cube :rect{
private int h;
public void set2 (int x){
h = x;
}
public void masahatc(){
int s=(x*h+x*y+y*h)*2;
Console.WriteLine("masahat =" + s.ToString());
}
public void hajm(){
int s= x*y*h;
Console.WriteLine("hajm =" + s.ToString());
}
};
static void Main(string[] args)
{
cube p;
p = new cube();
p.set1(2, 4);
p.set2(3);
p.masahat();
p.mohit();
p.masahatc();
p.hajm();
Console.ReadLine();
}
}
}
}
web : *شما قادر به دیدن لینک ها نیستید ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید*
Instagram : @max_three
Instagram : @max_three


