advertise laitec sharif univercity تبلیغات در سایت سورس کد تبلیغات در سایت سورس کد
دانلود پروژه فروشنده دوره گرد با الگوریتم گرانشی در #C

دانلود پروژه فروشنده دوره گرد با الگوریتم گرانشی در #C

4800 تومان
دانلود برنامه آزمون تستی در مالتی مدیا بیلدر MMb

دانلود برنامه آزمون تستی در مالتی مدیا بیلدر MMb

3000 تومان
دانلود پروژه پایانی طراحی وب سایت مخابرات با Asp.net

دانلود پروژه پایانی طراحی وب سایت مخابرات با Asp.net

14000 تومان
پروژه کامل مدیریت شرکت نرم افزاری با سی شارپ و SQL

پروژه کامل مدیریت شرکت نرم افزاری با سی شارپ و SQL

15000 تومان
دانلود پایان نامه وب سایت مهندسی پزشکی با ASP.net

دانلود پایان نامه وب سایت مهندسی پزشکی با ASP.net

12000 تومان

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

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

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

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

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

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

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

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

 

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

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

 

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

{

           برنامه کلاس

}

 

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

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

 

 



0
نظرات

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



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


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

سفارش پروژه در سورس کد

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

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