ٹیکنالوجی

Anonim

ابتدائی بمقابلہ کنٹینرشپ

پودوں اور کنٹین شپ شپ OOP میں موصول ہونے والی دو اہم تصورات ہیں (آبائی مہذب پروگرامنگ مثال: C ++). سادہ شرائط میں، کنٹینشپ شپ اور جغرافیائی معاملات دونوں کو اضافی خصوصیات یا کلاس کے رویے فراہم کرنے کے ساتھ. وراثت اس کلاس کی صلاحیت ہے جس کے مطابق والدین کی خصوصیات اور رویے کو بڑھانے کے لۓ اپنے والدین کی حیثیت سے وراثت حاصل کریں. دوسری طرف، کنٹینرشپ کو ایک کلاس کی صلاحیت ہے جس میں مختلف طبقات کی شناختی رکن کے اعداد و شمار کے طور پر موجود ہے.

وراثت کیا ہے؟

جیسا کہ مندرجہ بالا ذکر کیا گیا ہے، انفرادی طور پر اس کی توسیع کی طرف سے والدین کی کلاس سے خصوصیات اور سلوک کے وارث ہونے کے لئے کلاس کی صلاحیت ہے. وراثت بنیادی طور پر ایک نئی طبقے کی کلاس کی طرف سے ایک موجودہ طبقہ کی خصوصیات اور رویے کو بڑھانے کی اجازت دیتا ہے. اگر کلاس A بی توسیع کرتا ہے، پھر کلاس بی کو پیراگراف کلاس (یا سپر کلاس) کہا جاتا ہے اور کلاس A کو بچے کی کلاس (یا حاصل کردہ کلاس / ذیلی کلاس) کہا جاتا ہے. اس مثال کے منظر میں، کلاس اے تمام عوامی اور محفوظ صفات اور طریقوں کی سپر کلاس (بی) کا وارث کرے گا. ذیلی کلاس اختیاری پر مبنی کرسکتے ہیں (والدین کی کلاس سے وراثت کے طریقوں پر نئے یا توسیع کی فعالیت فراہم کرتے ہیں). وراثت OOP میں ایک "تعلقات" کا تعلق ہے. یہ بنیادی طور پر یہ مطلب ہے کہ اے اے بھی ہے. دوسرے الفاظ میں، بی ایک حقیقی دنیا کے ادارے کی عام وضاحت کے ساتھ کلاس ہوسکتا ہے لیکن ایک مخصوص خاصیت کی وضاحت کرتا ہے. ایک حقیقی دنیا کے پروگرامنگ کے مسئلے میں، شخص طبقے کو ملازمت کی کلاس بنانے کے لئے بڑھایا جا سکتا ہے. اسے مہارت کہا جاتا ہے. لیکن آپ سب سے پہلے ملازمت کے طبقے کو بھی تخلیق کرسکتے ہیں اور پھر اس شخص کے ساتھ ساتھ (i عمومی طور پر) عام طور پر اس کو عام طور پر تشکیل دے سکتے ہیں. اس مثال میں، ملازم شخص کی تمام خصوصیات اور رویے کا حامل ہوگا (یعنی ایم ایم ملازمت بھی شخص ہے) اور اس میں کچھ اضافی فعالیت بھی ہوسکتی ہے (اس طرح، شخص ملازم نہیں ہے).

کنٹینرشپ کیا ہے؟

کنٹینرشپ کو ایک کلاس کی صلاحیت ہے جس میں مختلف طبقات کی شناختی ممبروں کے طور پر موجود چیزوں پر مشتمل ہے. مثال کے طور پر، کلاس A کلاس میں ب کی حیثیت سے ایک رکن کے طور پر شامل ہوسکتا ہے. یہاں، بی میں بیان کردہ تمام عام طریقوں (یا افعال) کلاس کے اندر عملدرآمد کی جا سکتی ہیں. کلاس A کنٹینر بن جاتا ہے، جبکہ کلاس B متقابل کلاس بن جاتا ہے. Containership بھی ساخت کے طور پر حوالہ دیا جاتا ہے. اس مثال میں، یہ کہا جاسکتا ہے کہ کلاس کلاس سے تعلق رکھتا ہے. OOP میں، کنٹینرشپ ایک "تعلقات" تعلقات کی نمائندگی کرتا ہے. یہ نوٹ کرنا ضروری ہے کہ اگرچہ کنٹینر کو موجود طبقے کے تمام عام طریقوں پر عملدرآمد کرنے کی ضرورت ہے، تو یہ اضافی فعالیت کو تبدیل کرنے یا تبدیل کرنے کے قابل نہیں ہے. جب یہ ایک حقیقی دنیا کی پروگرامنگ کے مسئلے پر آتا ہے، کلاس ٹیکس کی کسی چیز کی کلاس کلاس میں شامل ہوسکتی ہے، اور اس طرح یہ کہا جا سکتا ہے کہ فارم میں ٹیکسٹ بکس (یا متبادل طور پر، فارم ٹیک ٹیک بکس سے تیار ہے).

وراثت اور کنٹینرشپ کے درمیان فرق

اگرچہ وراثت اور کنٹینرشپ دو اوپ تصورات ہیں، وہ پروگرامر کو حاصل کرنے کے لۓ وہ بالکل مختلف ہیں. انفرادی طور پر اس کی توسیع کی طرف سے والدین کی خصوصیات اور رویے کی وراثت حاصل کرنے کے لئے ایک کلاس کی صلاحیت ہے، جبکہ کنٹینرشپ کو ایک کلاس کی صلاحیت ہے جس میں مختلف طبقات کی شناختی رکن کے اعداد و شمار پر مشتمل ہے. اگر ایک کلاس توسیع کی جاتی ہے تو یہ تمام عوامی اور محفوظ خصوصیات / رویے کی وراثت رکھتا ہے اور اس طرز عمل کو ذیلی کلاس کی طرف سے ختم کیا جا سکتا ہے. لیکن اگر ایک دوسرے میں ایک کلاس موجود ہے تو، کنٹینر کو اس میں شامل کرنے کے رویے کو تبدیل یا شامل کرنے کی صلاحیت نہیں ملتی ہے. وراثت OOP میں ایک "تعلقات" تعلقات کی نمائندگی کرتا ہے، جبکہ کنٹینرشپ ایک "تعلقات" تعلقات کی نمائندگی کرتا ہے.