advertise laitec sharif univercity
سورس پروژه دفترچه تلفن ساده در سی شارپ #c و بانک Access

سورس پروژه دفترچه تلفن ساده در سی شارپ #c و بانک Access

10000 تومان
دانلود سورس اپلیکیشن اندروید یادآوری-انجامش بده–ToDo

دانلود سورس اپلیکیشن اندروید یادآوری-انجامش بده–ToDo

14000 تومان
دانلود سورس بازی اندروید جدول خونه (900 جدول) همراه آموزش راه اندازی

دانلود سورس بازی اندروید جدول خونه (900 جدول) همراه آموزش راه اندازی

99000 تومان
دانلود سورس n وزیر با جست وجوی ممنوع در سی شارپ #C

دانلود سورس n وزیر با جست وجوی ممنوع در سی شارپ #C

10000 تومان
دانلود سورس پروژه TSP با الگوریتم مورچگان Ants

دانلود سورس پروژه TSP با الگوریتم مورچگان Ants

10000 تومان

وراثت در زبان سی پلاس پلاس ++C

وراثت فرآیندی است که در آن میتوان کلاس های جدیدی را از کلاسهای موجود ایجاد کرد، بطوریکه کلاس جدید صفات و رفتار کلاس موجود را به خودش اختصاص دهد یا با استفاده از آنها، ویژگی ها و صفات دیگر را اصلاح کند و یا آنها را جایگزین نماید.
وراثت در زبان سی پلاس پلاس ++C

وراثت در زبان سی پلاس پلاس ++C

یکی از ویژگی های مهم برنامه نویسی شیءگرا وارثت است. وراثت فرآیندی است که در آن میتوان کلاس های جدیدی را از کلاسهای موجود ایجاد کرد، بطوریکه کلاس جدید صفات و رفتار کلاس موجود را به خودش اختصاص دهد یا با استفاده از آنها، ویژگی ها و صفات دیگر را اصلاح کند و یا آنها را جایگزین نماید. وراثت، استفاده مجدد از کلاسها را که یکی از نکات مهم مهندسی نرم افزار است فراهم میکند. و به این ترتیب موجب کاهش مشکلات در طراحی سیستمها میشود.

هنگام ایجاد کلاسهای جدید، به جای اینکه تمام اعضای داده ای و توابع عضو آن از اول نوشته شوند، برنامه نویس میتواند کلاسهایی را که قبلا نوشته و مورد استفاده قرار گرفته اند انتخاب کرده، اعضای آنها را در کلاس جدید به ارث ببرد.  کلاس موجود را که میتوان رفتارها و صفات آنها را به ارث برد، کلاس پایه و کلاس جدید را که صفات و رفتارها را از این کلاسها به ارث میبرد، کلاس مشتق می نامند. هر کلاس مشتق میتواند خودش بعنوان یک کلاس پایه باشد که کلاسهای دیگری، صفات و رفتار آنها را به ارث ببرند. در این حالت میگوییم وراثت چندگانه اتفاق افتاده است. در وراثت چندگانه کلاس مشتق، صفات و رفتارها را از چند کلاس به ارث میبرد. وراثت چندگانه کمی دشوار و احتمال بروز خطا در آن زیاد است. در مقابل در وراثت یگانه، کلاس جدید صفات و رفتار یک کلاس را به ارث میبرد.

کلاس مشتق، علاوه بر اعضای داده ای و توابع عضوی که از کلاس پایه به ارث میبرد، میتواند اعضای دیگری را برای خودش تعریفق کند. بنابراین کلاس مشتق میتواند بزرگتر از کلاس پایه باشد. کلاس مشتق خاص تر از کلاس پایه است و گروه کوچکتری از اشیا را در برمیگیرد. بعنوان مثال اگر غذا را بعنوان یک کلاس در نظر بگیریم، میوه بخشی از این کلاس است که میتواند از کلاس غذا مشتق شود.

بعنوان مثال برای آشنایی با مفهوم کلاس پایه و مشتق، مستطیل یقینا یک چهارضلعی است. پس میتوان گفت که کلاس مستطیل از کلاس چهارضلعی به ارث برده میشود. در این حالت کلاس چهارضلعی را کلاس پایه و کلاس مستطیل را کلاس مشتق گویند. مستطیل حالت خاصی از چهار ضلعی است اما نمیتوان ادعا کرد که هر چهار ضلعی یک مستطیل است.

وراثت، ساختار سلسله مراتبی درختی را ایجاد میکند. کلاس پایه در یک رابطه سلسله مراتبی با کلاسهای مشتق قرار دارد. وقتی کلاسی در راهکار وراثت شرکت میکند، یا یک کلاس پایه است که صفات و رفتارهایی را برای کلاسهای دیگر تولید میکند و یا یک کلاس مشتق است که صفات و رفتارها را به ارث میبرد. 

 

کنترل دستیابی به کلاس پایه

همانطور که گفته شد، کلاس مشتق صفات و رفتار کلاس پایه را به ارث میبرد. برای نمایش کلاس مشتق بصورت زیر عمل میشود:

 

class     نام کلاس پایه    نوع دستیابی :  نام کلاس مشتق  

{

           برنامه کلاس

}

 

آنچه که در این شکل کلی باید توضیح داده شود، نوع دستیابی است. نوع دستیابی میتواند public  ، private و یا protected باشد. اگر نوع دستیابی ذکر نشود، private منظور خواهد شد. اگر نوع دستیابی public باشد تمام اعضای عمومی کلاس پایه، اعضای عمومی کلاس مشتق خواهند بود و تمام اعضای محافظت شده کلاس پایه نیز بعنوان اعضای محافظت شده کلاس مشتق منظور میشوند. توجه داشته باشید که توابع دوست نمیتوانندبه ارث برده شوند، کلاس مشتق نمیتواند به اعضای اختصاصی کلاس پایه دسترسی داشته باشد، زیرا در غیر این صورت مفهوم بسته بندی کلاس پایه از بین میرود. اعضایی از کلاس پایه که نباید توسط کلاسهای مشتق دستیابی شوند، بصورت private در کلاس پایه تعریف میشوند. 

اگر نوع دستیابی private منظور شود، تمام اعضای عمومی و محافظت شده کلاس پایه، بعنوان اعضای اختصاصی کلاس مشتق منظور میشوند. معنایش این است که اعضای کلاس مشتق میتوانند به آنها دستیابی داشته باشند ولی بخش های دیگر برنامه که عضوی از کلاس مشتق پایه نیستند نمیتوانند به آنها دسترسی داشته باشند.

 

 



1
نظرات
  • user avatar Md:
    ۱۵:۳۸:۳۰ __ ۱۳۹۷/۰۳/۱۶

    ممنون از سایت خوبتون!

نظر خود را ارسال کنید



نام:
ایمیل:
دیدگاه:
captcha
کد امنیتی :


advertise
مفهوم ارث بری در زبان سی پلاس پلاسمفهوم وراثت در زبان برنامه نویسی سی پلاس پلاسکنترل دستیابی به کلاس پایه وراثت در زبان ++Cمفهوم وراثت در برنامه نویسی شیءگرای ++Cآموزش وراثت در زبان ++Cتبلیغات ارزان سایت آموزش برنامه نویسیتبلیغات مخصوص طراحان وب سایتتبلیغات در سایت برنامه نویسیتبلیغات اینترنتی برای برنامه نویساندر آغوش مینیمالیسممنوی همبرگر با سه خط افقی که روی یکدیگر قرار گرفته اند نشانه چیست؟ سوئیچ به یک ستون واحدتبدیل متن ساده به وبلاگ و سایت های پویا با React.jsکتابخانه sass برای استفاده آسان تر از آنکتابخانه سطح بالا برای اتوماتیک سازی اعمال مرورگر لیست برچسب ها
تمامی حقوق این سایت اعم از محتوی ، تصاویر ، قالب و ... متعلق به گروه مهندسی وب سایت سورس کد می باشد.
SourceCodes.ir ، افقی روشن برای برنامه نویسان ، از مبتدی تا حرفه ای

پیشنهادات ویژه سورس کد

پکیج ویژه پروژه پایانی رشته کامپیوتر دانلود مجموعه 70 پروژه کاربردی سی شارپ وب سایت فروشگاه با php