جاوا میں میتھڈ اوور رائیڈنگ کیا ہے؟

Jawa My Myt Awwr Rayy Ng Kya



جاوا میں ڈیٹا کو اپ ڈیٹ کرتے وقت، کوڈ کو برقرار رکھتے ہوئے کچھ مخصوص فنکشنلٹیز کو اوور رائیڈ کرنے کی ضرورت ہو سکتی ہے۔ مثال کے طور پر، ایک اوور رائڈ فنکشن میں کچھ نئی فنکشنلٹیز کو شامل کرنا جیسے کہ سابق فیچر باقی رہیں۔ ایسے حالات میں ' طریقہ اوور رائیڈنگ جاوا میں ڈویلپر کے اختتام پر وقتا فوقتا جمع شدہ خصوصیات کو اپ ڈیٹ کرنے میں حیرت انگیز کام کرتا ہے۔

یہ مضمون جاوا میں اوور رائیڈنگ کے طریقہ کار کے استعمال اور نفاذ کے بارے میں وضاحت کرے گا۔

جاوا میں 'میتھڈ اوور رائیڈنگ' کیا ہے؟

اگر چائلڈ کلاس میں اسی طرح کا طریقہ موجود ہے جیسا کہ اس کی پیرنٹ کلاس میں بیان کیا گیا ہے، تو اسے کہا جاتا ہے ' طریقہ اوور رائیڈنگ 'جاوا میں۔ ایسا کرنے سے، چائلڈ کلاس کی فعالیتیں، یعنی اوور رائیڈڈ طریقہ، اثر میں آجاتا ہے۔







جاوا میں 'میتھڈ اوور رائیڈنگ' کے لیے غور و فکر

  • طریقہ کار میں ایک جیسا نام ہونا چاہیے جیسا کہ اس کی پیرنٹ کلاس میں ہے۔
  • طریقہ کار کا ایک جیسا پیرامیٹر ہونا چاہیے جیسا کہ اس کی پیرنٹ کلاس میں ہے۔
  • کے طور پر مختص طریقہ ' حتمی 'کو اوور رائڈ نہیں کیا جا سکتا۔

مثال 1: جاوا میں ایک طریقہ کو اوور رائیڈ کرنا

اس مثال میں، طریقہ کار کو زیر کرنے کا طریقہ، یعنی، ' فنکشن وراثت کے ذریعے کیا جا سکتا ہے:



کلاس والدین {

عوام باطل شو آؤٹ ( ) {

سسٹم . باہر . پرنٹ ایل این ( 'یہ لینکس ہینٹ ہے!' ) ;

} }

کلاس بچہ توسیع کرتا ہے والدین {

عوام باطل شو آؤٹ ( ) {

سسٹم . باہر . پرنٹ ایل این ( 'یہ جاوا ہے!' ) ;

} }

عوام کلاس مثال {

عوام جامد باطل مرکزی ( تار [ ] args ) {

بچے کی اعتراض = نئی بچہ ( ) ;

اعتراض شو آؤٹ ( ) ;

} }

مندرجہ بالا مظاہرے میں، درج ذیل اقدامات کا اطلاق کریں:



  • سب سے پہلے، ایک پیرنٹ (سپر) کلاس بنائیں جس کا نام ' والدین '
  • اس کلاس کے اندر، ایک فنکشن کی وضاحت کریں جس کا نام ' شو آؤٹ() اور دیئے گئے پیغام کو اس کی (فنکشن) تعریف میں ڈسپلے کریں۔
  • اس کے بعد، ایک چائلڈ (سب) کلاس بنائیں جس کا نام ' بچہ 'وراثت میں ملنا' والدین 'کلاس بذریعہ' توسیع کرتا ہے 'کلیدی لفظ.
  • اس کلاس میں، اس کی پیرنٹ کلاس میں متعین فنکشن کو ایک جیسے نام سے ڈیفائن کرکے اوور رائیڈ کریں شو آؤٹ() اور بیان کردہ پیغام ڈسپلے کریں۔
  • بنیادی طور پر، 'کے ذریعے چائلڈ کلاس کا ایک آبجیکٹ بنائیں نئی 'کلیدی لفظ اور' بچہ() 'کنسٹرکٹر۔
  • آخر میں، فنکشن کو طلب کریں ' شو آؤٹ() تخلیق کردہ آبجیکٹ کا حوالہ دے کر۔ یہ پیرنٹ کلاس میں پہلے سے طے شدہ فنکشن کی بجائے اوور رائیڈ فنکشن کو شروع کرے گا۔

آؤٹ پٹ





مندرجہ بالا آؤٹ پٹ میں، یہ تجزیہ کیا جا سکتا ہے کہ مؤخر الذکر فعل، یعنی اوور رائیڈن اثر میں آتا ہے۔



مثال 2: جاوا کا استعمال کرتے ہوئے طریقہ اوور رائیڈنگ میں 'سپر' کلیدی لفظ کا استعمال

اس خاص مثال میں، ' سپر ” کلیدی لفظ کو پہلے سے طے شدہ، یعنی والدین اور اوور رائیڈڈ طریقہ دونوں کی فعالیتوں کو شروع کرنے کے لیے منسلک کیا جا سکتا ہے:

کلاس والدین {

عوام باطل شو آؤٹ ( ) {

سسٹم . باہر . پرنٹ ایل این ( 'یہ لینکس ہینٹ ہے!' ) ;

} }

کلاس بچہ توسیع کرتا ہے والدین {

عوام باطل شو آؤٹ ( ) {

سپر . شو آؤٹ ( ) ;

سسٹم . باہر . پرنٹ ایل این ( 'یہ جاوا ہے!' ) ;

} }

عوام کلاس مثال {

عوام جامد باطل مرکزی ( تار [ ] args ) {

بچے کی اعتراض = نئی بچہ ( ) ;

اعتراض شو آؤٹ ( ) ;

} }

مندرجہ بالا کوڈ بلاک میں:

  • اسی طرح، ایک پیرنٹ کلاس بنائیں جس کا نام ' والدین 'اور فنکشن جمع کریں' شو آؤٹ() اس میں، فراہم کردہ پیغام کو ظاہر کرنا۔
  • اگلے مرحلے میں، ایک چائلڈ کلاس بنائیں جس کا نام ' بچہ 'والدین طبقے کو وراثت میں ملانا۔
  • اس کلاس کے اندر، اسی طرح، ایک جیسی فنکشن کو اوور رائیڈ کریں۔ اس کے علاوہ، منسلک کریں ' سپر ” ڈیفالٹ کو طلب کرنے کے لیے فنکشن کے ساتھ کلیدی لفظ، یعنی پیرنٹ کلاس فنکشن کی خصوصیات۔
  • آخر میں، چائلڈ کلاس کا ایک آبجیکٹ بنائیں اور اوور رائیڈڈ فنکشن کو طلب کریں۔
  • الگورتھم: عملدرآمد اس طرح کیا جائے گا کہ جب اوور رائیڈڈ فنکشن کو پکارا جائے، اور ' سپر کلیدی لفظ پیرنٹ کلاس فنکشن کا حوالہ دے گا۔ اس کے نتیجے میں کنسول پر والدین اور چائلڈ کلاسز دونوں کے فنکشنلٹیز کو بیک وقت لاگ ان کیا جائے گا۔

آؤٹ پٹ

مندرجہ بالا آؤٹ پٹ اس بات کی نشاندہی کرتا ہے کہ اوور رائڈ فنکشن کے اثر کو 'کے ذریعے بھی منسوخ کیا جاسکتا ہے۔ سپر 'کلیدی لفظ.

مثال 3: جاوا میں 'حتمی' طریقہ کو اوور رائیڈ کرنا

اس مثال میں، ایک فنکشن کے طور پر مختص کیا جا سکتا ہے ' حتمی پیرنٹ کلاس میں اور بعد میں اس کی چائلڈ کلاس میں اس تک رسائی حاصل کرکے تجزیہ کیا گیا:

کلاس والدین {

حتمی عوام باطل شو آؤٹ ( ) {

سسٹم . باہر . پرنٹ ایل این ( 'یہ لینکس ہینٹ ہے!' ) ;

} }

کلاس بچہ توسیع کرتا ہے والدین {

عوام باطل شو آؤٹ ( ) {

سسٹم . باہر . پرنٹ ایل این ( 'یہ جاوا ہے!' ) ;

} }

عوام کلاس مثال {

عوام جامد باطل مرکزی ( تار [ ] args ) {

بچے کی اعتراض = نئی بچہ ( ) ;

اعتراض شو آؤٹ ( ) ;

} }

اوپر فراہم کردہ کوڈ کے مطابق، ذیل میں دیے گئے اقدامات کا اطلاق کریں:

  • پیرنٹ کلاس بنائیں ' والدین '
  • اس کلاس کے اندر، فنکشن مختص کریں ' شو آؤٹ() 'جیسے' حتمی '، جیسا کہ پچھلے کلیدی لفظ سے اشارہ کیا گیا ہے۔
  • اب چائلڈ کلاس کا وارث بنو' بچہ 'سابقہ ​​زیر بحث کلاس سے۔ یہاں، مختص کردہ کو اوور رائیڈ کریں ' حتمی پیرنٹ کلاس میں فنکشن۔
  • بنیادی طور پر، ایک آبجیکٹ بنائیں ' بچہ 'کلاس کریں اور اوور رائیڈڈ فنکشن کو طلب کریں۔

آؤٹ پٹ

مندرجہ بالا کوڈ پر عمل درآمد ظاہر ہونے والی غلطی کو لاگ ان کرے گا جب سے ' حتمی 'طریقہ کو اوور رائڈ نہیں کیا جا سکتا۔

نتیجہ

اگر چائلڈ کلاس میں اسی طرح کا طریقہ ہے جیسا کہ اس کی پیرنٹ کلاس میں بیان کیا گیا ہے، تو یہ جاوا میں کسی طریقہ کو اوور رائیڈ کرنے کے مساوی ہے۔ یہ نقطہ نظر سابق طریقوں کو اوور رائیڈ کرتا ہے اور مؤخر الذکر کو نافذ کرتا ہے۔ اوور رائیڈنگ کو 'کے ذریعے پورا کیا جا سکتا ہے سپر ' یا پھر ' حتمی 'مختلف طریقوں سے مطلوبہ الفاظ۔ اس بلاگ نے جاوا میں طریقہ اوور رائیڈنگ کے تصور پر تبادلہ خیال کیا ہے۔