ازگر کلاسز اور آبجیکٹ - آبجیکٹ اورینٹڈ پروگرامنگ



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

اسٹیک اوور فلو کی پیش گوئی کے بعد کہ 2019 تک ، ازگر فعال ڈویلپرز ، ڈیمانڈ کے لحاظ سے دوسری زبانوں کو پیچھے چھوڑ دے گا صرف بڑھ رہا ہے.ازگر کا مقصد آبجیکٹ پر مبنی پروگرامنگ نمونہ ہے۔ اس میں ازگر کی کلاسوں کا اعلان ، ان سے اشیاء تیار کرنے اور صارفین کے ساتھ بات چیت کرنے کا معاملہ ہے۔ آبجیکٹ پر مبنی زبان میں ، پروگرام کو خود ساختہ اشیاء میں تقسیم کیا جاتا ہے یا آپ کئی چھوٹے پروگراموں میں کہہ سکتے ہیں۔ ہر شے درخواست کے مختلف حص representے کی نمائندگی کررہی ہے جو آپس میں بات چیت کرسکتی ہے۔
اس ازگر کلاس بلاگ میں ، آپ درج ذیل ترتیب میں کلاسز اور اشیاء کے ہر پہلو کو سمجھیں گے:

آو شروع کریں.:-)





ازگر کی کلاس کیا ہے؟

ازگر میں ایک کلاس وہ نقشہ ہے جس سے مخصوص اشیاء بنائے جاتے ہیں۔ اس کی مدد سے آپ اپنے سافٹ ویئر کو ایک خاص انداز میں تشکیل دے سکتے ہیں۔ یہاں ایک سوال آتا ہے کہ کیسے؟ کلاسز ہمیں اپنے ڈیٹا کو منطقی طور پر گروپ کرنے اور اس طرح کام کرنے کی اجازت دیتی ہیں کہ دوبارہ استعمال کرنا آسان ہے اور ضرورت پڑنے پر اسے تشکیل دینے کا ایک طریقہ۔ ذیل کی تصویر پر غور کریں۔

کلاسز اینڈ آبجیکٹس - ازگر کی کلاس - ایڈوریکاپہلی شبیہہ (A) میں ، یہ کسی ایسے گھر کے بلیو پرنٹ کی نمائندگی کرتا ہے جسے سمجھا جاسکتا ہے کلاس . اسی بلیو پرنٹ کی مدد سے ، ہم کئی مکانات تشکیل دے سکتے ہیں اور ان پر غور کیا جاسکتا ہے اعتراضات . کلاس کا استعمال کرتے ہوئے ، آپ اپنے پروگراموں میں مستقل مزاجی شامل کرسکتے ہیں تاکہ ان کو صاف ستھرا اور موثر طریقوں سے استعمال کیا جاسکے۔ اوصاف ڈیٹا ممبرز (کلاس متغیرات اور مثال کے متغیرات) اور وہ طریقے ہیں جو ڈاٹ اشارے کے ذریعے حاصل کیے جاتے ہیں۔



  • کلاس متغیر ایک متغیر ہے جو کلاس کی تمام مختلف اشیاء / مثالوں کے ذریعہ مشترکہ ہے۔
  • مثال کے متغیر متغیرات ہیں جو ہر مثال کے لئے منفرد ہیں۔ اس کی وضاحت کسی طریقہ کار کے اندر کی گئی ہے اور یہ صرف ایک کلاس کی موجودہ مثال سے تعلق رکھتی ہے۔
  • طریقے ایک فنکشن کے طور پر بھی کہا جاتا ہے جو ایک کلاس میں تعریف کی جاتی ہے اور کسی شے کے سلوک کو بیان کرتی ہے۔

اب ، آئیے ہم آگے بڑھتے ہیں اور دیکھتے ہیں کہ یہ پی چیرم میں کیسے کام کرتا ہے۔ شروع کرنے کے لئے ، پہلے ازگر کی ایک کلاس کے نحو کو دیکھیں۔

نحو :

کلاس Class_name: بیان -1۔ . بیان-این

یہاں ، کلاس ' بیان ایک نئی طبقاتی تعریف پیدا کرتا ہے۔ کلاس کا نام فوری طور پر مطلوبہ الفاظ کی پیروی کرتا ہے “ کلاس ' ازگر میں جس کے بعد بڑی آنت پڑتی ہے۔ ازگر میں ایک کلاس بنانے کے لئے ، ذیل کی مثال پر غور کریں:



کلاس ملازم: پاس نہیں # اوصاف اور طریقوں emp_1 = ملازم () emp_2 = ملازم () # انسٹنس متغیر کو دستی طور پر تشکیل دیا جاسکتا ہے emp_1.first = 'aayushi' emp_1.last = 'جوہری' emp_1.email='aayushi@edureka.co 'emp_1.pay = 10000 emp_2.first =' test 'emp_2.last =' abc 'emp_2.email='test@company.com' emp_2.pay = 10000 پرنٹ (emp_1.email) پرنٹ (emp_2.email)

آؤٹ پٹ -

aayushi@edureka.co test@company.com

جاوا میں ویکٹر کیا ہے؟

اب ، اگر ہم دستی طور پر یہ متغیرات مرتب نہیں کرنا چاہتے تو کیا ہوگا۔ آپ کو بہت سارے کوڈ نظر آئیں گے اور یہ بھی غلطی کا شکار ہے۔ لہذا اسے خود کار بنانے کے ل we ، ہم 'init' طریقہ استعمال کرسکتے ہیں۔ اس کے ل let ، آئیے سمجھتے ہیں کہ عجیب و غریب طبقے میں کون سے طریقے اور خصوصیات ہیں۔

ازگر کی کلاس میں طریقے اور خصوصیات

اب کلاس بنانا کچھ فعالیت کے بغیر نامکمل ہے۔ لہذا افادیت کی وضاحت مختلف اوصاف کو طے کرکے کی جاسکتی ہے جو ان صفات سے متعلق اعداد و شمار اور افعال کے لئے ایک کنٹینر کے طور پر کام کرتی ہے۔ ازگر میں افعال کو بھی کہا جاتا ہے طریقے . کے بارے میں بات اس میں طریقہ ، یہ ایک خاص فنکشن ہے جس کو بلایا جاتا ہے جب بھی اس کلاس کا کوئی نیا اعتراض فوری طور پر پیش کیا جاتا ہے۔ آپ اس کے بارے میں ابتداء کے طریقے کے بارے میں سوچ سکتے ہیں یا اگر آپ کسی اور آبجیکٹ پر مبنی پروگرامنگ پس منظر جیسے C ++ ، جاوا وغیرہ سے آ رہے ہیں تو آپ اسے کنسٹرکٹر کے طور پر غور کر سکتے ہیں۔ اب جب ہم کسی کلاس کے اندر کوئی طریقہ ترتیب دیتے ہیں تو وہ خود بخود موصول ہوجاتا ہے۔ آئیے ہم ازگر کی کلاس کے ساتھ آگے بڑھتے ہیں اور اس طریقے کا استعمال کرتے ہوئے پہلا نام ، آخری نام اور تنخواہ قبول کرتے ہیں۔

کلاس ملازم: Def __init __ (خود ، پہلا ، آخری ، سال): self.fname = پہلا self.lname = آخری self.sal = سالم self.email = پہلا + '۔' + آخری + '@ کمپنی ڈاٹ کام' ایمپ_ = ملازم ('آوشی' ، 'جوہری' ، 00 35000000)) ایمپ_2 = ملازم ('ٹیسٹ' ، 'ٹیسٹ' ، 100000) پرنٹ (ایمپ_1. ای میل) پرنٹ (ایمپ_2. ای میل)

اب ہمارے 'init' طریقہ کے اندر ، ہم نے یہ مثال کے طور پر متغیرات (خود ، پہلے ، آخری ، سال) متعین کردیئے ہیں۔ خود ایک مثال ہے جس کا مطلب ہے جب بھی ہم خود.فنامی = لکھتے ہیں ، یہ emp_1.first = ’aoyushi’ جیسا ہی ہوتا ہے۔ پھر ہم نے ملازم طبقے کی ایسی مثالیں پیدا کیں جہاں ہم init طریقہ میں بیان کردہ اقدار کو پاس کرسکیں۔ یہ طریقہ مثال کو دلائل کے طور پر لیتا ہے۔ دستی طور پر کرنے کے بجائے ، یہ کیا جائے گا خود بخود ابھی.

اگلا ، ہم کسی قسم کی کارروائی کرنے کی اہلیت چاہتے ہیں۔ اس کے لئے ، ہم ایک شامل کریں گے طریقہ اس کلاس میں فرض کریں کہ میں چاہتا ہوں کہ فعالیت میں ملازم کا پورا نام ظاہر ہو۔ تو آئیے ہم عملی طور پر اس پر عمل درآمد کرتے ہیں۔

کلاس ملازم: Def __init __ (خود ، پہلا ، آخری ، سال): self.fname = پہلا self.lname = آخری self.sal = سالم self.email = پہلا + '۔' + آخری + '@ کمپنی ڈاٹ کام' Def مکمل نام (خود): واپسی '{} {}'. فارمیٹ (self.fname، self.lname) emp_1 = ملازم ('آیوشی' ، 'جوہری' ، 350000) emp_2 = ملازم ('ٹیسٹ' ، 'ٹیسٹ' ، 100000) پرنٹ (emp_1.email) پرنٹ (emp_2.email) پرنٹ (emp_1.fullname ()) پرنٹ (emp_2.fullname ())

آؤٹ پٹ-

aayushi.johari@company.com test.test@company.com ایوشیجوہاری ٹیسٹ

جیسا کہ آپ اوپر دیکھ سکتے ہیں ، میں نے ایک کلاس کے اندر 'پورا نام' کے نام سے ایک طریقہ تیار کیا ہے۔ تو ایک ازگر کے طبقے میں ہر طریقہ خود بخود مثال کے طور پر پہلی دلیل کے طور پر لیتا ہے۔ اب اس طریقہ کار کے اندر ، میں نے مکمل نام پرنٹ کرنے اور اس کو واپس کرنے کے لئے منطقی تحریر کیا ہے ایمپ_1 پہلا نام اور آخری نام۔ اگلا ، میں نے 'خود' کا استعمال کیا ہے تاکہ یہ تمام مثالوں کے ساتھ کام کرے۔ لہذا اس کو ہر بار پرنٹ کرنے کے لئے ، ہم ایک استعمال کرتے ہیں طریقہ .

ازگر کلاسوں کے ساتھ آگے بڑھتے ہوئے ، متغیرات موجود ہیں جو کلاس کی تمام مثالوں میں مشترکہ ہیں۔ یہ کے طور پر کہا جاتا ہے کلاس متغیر . مثال کے متغیرات ہر ایک مثال کے لئے منفرد ہو سکتے ہیں جیسے نام ، ای میل ، سال وغیرہ۔ پیچیدہ؟ آئیے اس کو ایک مثال کے ساتھ سمجھیں۔ تنخواہ میں سالانہ اضافہ معلوم کرنے کے لئے نیچے کا کوڈ ملاحظہ کریں۔

کلاس ملازم: perc_raise = 1.05 Def __init __ (خود ، پہلا ، آخری ، سال): self.fname = پہلا self.lname = آخری self.sal = سال سیلف. ای میل = پہلا + '۔' + آخری + '@ کمپنی ڈاٹ کام' Def مکمل نام (خود): واپسی '{} {}'. فارمیٹ (self.fname، self.lname) Def প্রয়োগ_raise (خود): self.sal = انٹ (self.sal * 1.05 ) emp_1 = ملازم ('آیوشی' ، 'جوہری' ، 350000) emp_2 = ملازم ('ٹیسٹ' ، 'ٹیسٹ' ، 100000) پرنٹ (emp_1.sal) emp_1.apply_raise () پرنٹ (emp_1.sal)

آؤٹ پٹ-

350000 367500

جیسا کہ آپ اوپر دیکھ سکتے ہیں ، میں نے پہلے تنخواہ پرنٹ کیا ہے اور پھر 1.5٪ اضافے کا اطلاق کیا ہے۔ ان طبقاتی متغیروں تک رسائی حاصل کرنے کے ل we ، ہمیں یا تو کلاس کے ذریعہ ان تک رسائی حاصل کرنے کی ضرورت ہے یا کلاس کی مثال کے طور پر۔ اب ، آؤ ، ایک ازگر کی کلاس میں موجود مختلف صفات کو سمجھیں۔

ازگر کلاس میں اوصاف

ازگر میں صفات کسی شے ، عنصر یا کسی فائل کی خاصیت کی وضاحت کرتی ہیں۔ اس کی دو قسمیں ہیں۔

  • بلٹ میں کلاس خصوصیات: ازگر کلاسوں کے اندر مختلف اندرونی صفات موجود ہیں۔ مثال کے طور پر _ ڈکٹ_ ، _ ڈوک_ ، _ نام _ ، وغیرہ۔ مجھے وہی مثال لینے دو جہاں میں ملازم 1 کے تمام اہم قدر والے جوڑے دیکھنا چاہتا ہوں۔ اس کے ل you ، آپ نیچے درج ذیل بیان لکھ سکتے ہیں جس میں کلاس نام کی جگہ ہے۔

    پرنٹ (emp_1 .__ ڈک__)

    اس پر عمل درآمد کے بعد ، آپ کو آؤٹ پٹ ملے گا جیسے: {‘fname’: ‘aoyushi’، ‘lname’: ‘johari’، ‘sal’: 350000، ’ای میل‘: ‘aayushi.johari@company.com’}

  • صارفین کی طرف سے بیان کردہ خصوصیات : طبقاتی تعریف کے اندر اوصاف پیدا ہوتے ہیں۔ ہم متحرک طور پر کلاس کے موجودہ واقعات کے ل new نئی اوصاف پیدا کرسکتے ہیں۔ خصوصیات طبقاتی ناموں کے بھی پابند ہوسکتی ہیں۔

اگلا ، ہمارے پاس ہے عوامی ، محفوظ اور نجی اوصاف. آئیے ان کو تفصیل سے سمجھیں:

نام دینا ٹائپ کریں مطلب
نامعوامیہ صفات طبقاتی تعریف کے اندر یا باہر آزادانہ طور پر استعمال کی جاسکتی ہیں
_ ناممحفوظمحفوظ صفات کو طبقاتی تعریف سے باہر استعمال نہیں کیا جانا چاہئے ، جب تک کہ ذیلی طبقے کی تعریف کے اندر نہ ہو
__ نامنجیاس قسم کی صفت ناقابل رسائ اور پوشیدہ ہے۔ طبقاتی تعریف کے اندر ہی ، ان خصوصیات کو نہ تو پڑھنا اور نہ ہی لکھنا ممکن ہے


اگلا ، آئیے ایک ازگر کی کلاس یعنی آبجیکٹ کے سب سے اہم جزو کو سمجھیں۔

ازگر کلاس میں کون سے اشیاء ہیں؟

جیسا کہ ہم نے اوپر تبادلہ خیال کیا ہے ، کسی شے کو مختلف صفات تک رسائی کے لئے استعمال کیا جاسکتا ہے۔ یہ کلاس کی مثال پیدا کرنے کے لئے استعمال ہوتا ہے۔ مثال کے طور پر رن ​​ٹائم کے وقت تیار کردہ کلاس کا ایک مقصد ہے۔

ٹیo آپ کو فوری جائزہ دیں ، ایک شے بنیادی طور پر ہر وہ چیز ہے جو آپ کے آس پاس دکھائی دیتی ہے۔ مثال کے طور پر: ایک کتا جانوروں کی کلاس کا ایک مقصد ہے ، میں انسانی طبقے کا ایک فرد ہوں۔ اسی طرح ، ایک ہی فون کلاس سے مختلف اشیاء ہوسکتی ہیں۔یہ کسی فنکشن کال سے بالکل اسی طرح کی ہے جس کے بارے میں ہم پہلے ہی تبادلہ خیال کر چکے ہیں۔ آئیے اس کو ایک مثال کے ساتھ سمجھیں:

کلاس مائکلاس: ڈیف فنک (خود): پرنٹ ('ہیلو') # نیا بنائیں MyClass ob = MyClass () ob.func ()

ازگر کی کلاس کے ساتھ آگے بڑھتے ہوئے آئیے ، مختلف او او پیز کے مختلف تصورات کو سمجھیں۔

OOPs تصورات

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

ازگر کلاس: وراثت

وراثت ہمیں بیس / والدین کی کلاس سے وابستہ اور طریقوں کا وارث بننے کی اجازت دیتی ہے۔ یہ کارآمد ہے کیوں کہ ہم سب کلاسیں تشکیل دے سکتے ہیں اور اپنے تمام والدین کی کلاس سے فعالیت حاصل کرسکتے ہیں۔ تب ہم والدین کی کلاس کو متاثر کیے بغیر نئی خصوصیات شامل کرسکتے ہیں۔ آئیے ایک مثال کے ساتھ والدین کی کلاس اور بچوں کے کلاس کے تصور کو سمجھتے ہیں۔

جیسا کہ ہم تصویر میں دیکھ سکتے ہیں ، ایک بچہ باپ سے جائیدادیں ورثے میں ملتا ہے۔ اسی طرح ، ازگر میں ، دو طبقات ہیں:

جاوا میں آبجیکٹ کی ایک صف کا اعلان کیسے کریں

1. والدین کی کلاس (سپر یا بیس کلاس)

2. بچوں کی کلاس (ذیلی کلاس یا ماخوذ کلاس)

ایک طبقہ جو پراپرٹی کو وراثت میں ملتا ہے بچہ کلاس جبکہ ایک طبقہ جس کی جائداد وراثت میں ملتی ہیں والدین کلاس

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

آئیے ہم ازبر کی کلاس کے ساتھ آگے چلیں اور سمجھیں کہ وراثت کس طرح مفید ہے۔

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

کلاس ملازم: num_employee = 0 વધારો_amount = 1.04 Def __init __ (خود ، پہلا ، آخری ، سال): self.first = پہلا self.last = آخری self.sal = سال سیلف.ایمیل = پہلے + '۔' + آخری + '@ کمپنی ڈاٹ کام' ملازم.نم_یمپلوئی + = 1 ڈف مکمل نام (خود): واپسی '{} {}'. فارمیٹ (سیلف۔فسٹ ، سیلف۔لاسٹ) ڈیف ایلیج_ریج (سیلف): سیلف سال = انٹ ( سیلف.سال * اضافہ_اماؤنٹ) کلاس ڈویلپر (ملازم): پاس ایمپ_1 = ڈویلپر ('آیوشی' ، 'جوہری' ، 1000000) پرنٹ (ایمپ_ی۔ای میل)
 آؤٹ پٹ - aayushi.johari@company.com

جیسا کہ آپ مندرجہ بالا آؤٹ پٹ میں دیکھ سکتے ہیں ، ملازم کلاس کی تمام تفصیلات ڈویلپر کلاس میں دستیاب ہیں۔اب کیا ہوگا اگر میں کسی ڈویلپر کے لئے ایلیومینٹ کو 10 to میں تبدیل کرنا چاہتا ہوں؟ آئیے دیکھتے ہیں کہ یہ عملی طور پر کیسے کیا جاسکتا ہے۔

کلاس ملازم: num_employee = 0 વધારો_amount = 1.04 Def __init __ (خود ، پہلا ، آخری ، سال): self.first = پہلا self.last = آخری self.sal = سال سیلف.ایمیل = پہلے + '۔' + آخری + '@ کمپنی ڈاٹ کام' ملازم.نم_یمپلوئی + = 1 ڈف مکمل نام (خود): واپسی '{} {}'. فارمیٹ (سیلف۔فسٹ ، سیلف۔لاسٹ) ڈیف ایلیج_ریج (سیلف): سیلف سال = انٹ ( سیلف.سال * اضافہ_اماؤنٹ) کلاس ڈویلپر (ملازم): اضافہ_اماؤنٹ = 1.10 ایمپ_1 = ڈویلپر ('آیوشی' ، 'جوہری' ، 1000000) پرنٹ (emp_1.raise_amount)
 آؤٹ پٹ - 1.1

جیسا کہ آپ دیکھ سکتے ہیں کہ اس نے تنخواہ میں فیصد اضافے کو 4٪ سے بڑھا کر 10٪ کردیا ہے۔اب اگر میں ایک اور وصف شامل کرنا چاہتا ہوں تو ہمارے پروگرام کے طریقہ کار میں ایک پروگرامنگ زبان بولیں ، لیکن یہ ہمارے پیرنٹ کلاس میں موجود نہیں ہے۔ کیا اس کے لئے کوئی حل ہے؟ جی ہاں! ہم پورے ملازم کی منطق کو کاپی کرسکتے ہیں اور یہ کرسکتے ہیں لیکن اس سے کوڈ کا سائز دوبارہ بڑھ جائے گا۔ لہذا اس سے بچنے کے ل let ، ذیل کے کوڈ پر غور کریں:

کلاس ملازم: num_employee = 0 વધારો_amount = 1.04 Def __init __ (خود ، پہلا ، آخری ، سال): self.first = پہلا self.last = آخری self.sal = سال سیلف.ایمیل = پہلے + '۔' + آخری + '@ کمپنی ڈاٹ کام' ملازم.نم_یمپلوئی + = 1 ڈف مکمل نام (خود): واپسی '{} {}'. فارمیٹ (سیلف۔فسٹ ، سیلف۔لاسٹ) ڈیف ایلیج_ریج (سیلف): سیلف سال = انٹ ( سیلف ۔سال * اٹھانا_جماعت) کلاس ڈویلپر (ملازم): اضافہ_اماؤنٹ = 1.10 ڈیف __init __ (خود ، پہلا ، آخری ، سال ، پروگ_ لانگ): سپر () .__ init __ (پہلا ، آخری ، سال) سیلف پیراگ_ لانگ = پروگ_ لانگ ایمپیو = ڈویلپر ( 'آیوشی' ، 'جوہری' ، 1000000 ، 'ازگر') پرنٹ (emp_1.prog_lang)

سرنی جے ایس کی لمبائی حاصل کریں

لہذا ، صرف تھوڑا سا کوڈ کے ساتھ ، میں نے تبدیلیاں کیں۔ میں نے سپر .__ شروعات __ (پہلے ، آخری ، تنخواہ) کا استعمال کیا ہے جو بیس کلاس سے جائیدادیں وراثت میں ملتا ہے۔نتیجہ اخذ کرنے کے لئے ، وراثت کوڈ کو دوبارہ استعمال کرنے اور پروگرام کی پیچیدگی کو کم کرنے کے لئے استعمال کیا جاتا ہے۔

ازگر کلاس: کثیرالمعارف

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

آئیے ایک مثال کے ساتھ سمجھیں:

کلاس جانور: ڈیف __init __ (خود ، نام): self.name = name Def گفتگو (خود): پاس کلاس ڈاگ (جانور): Def گفتگو (خود): پرنٹ ('ووف') کلاس بلی (جانور): Def گفتگو ( خود): پرنٹ ('MEOW!') c = بلی ('کٹی') c.talk () d = کتا (جانور) d.talk ()

آؤٹ پٹ -

میانو! ووف

اگلا ، آئیے ایک اور آبجیکٹ پر مبنی پروگرامنگ تصور یعنی خلاصہ کی طرف چلتے ہیں۔

ازگر کلاس: خلاصہ

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

from abc درآمد ABC، خلاصہ طبقاتی کلاس ملازم (ABC): @ abstractmethod Def calculate_salary (self، sal): پاس کلاس ڈویلپر (ملازم): Def calculate_salary (خود، سال): Finalsalary = سال * 1.10 واپسی کی فائنلسری ایمپئ = ڈویلپر () پرنٹ (emp_1.calculate_salary (10000))

آؤٹ پٹ-

11000.0

جیسا کہ آپ مندرجہ بالا آؤٹ پٹ میں دیکھ سکتے ہیں ، ہم نے بیس تنخواہ بڑھا کر 10٪ کردی ہے یعنی تنخواہ اب 11000 ہوگئی ہے۔ اب ، اگر آپ واقعتا and چلتے ہیں اور کلاس “ملازم” کا کوئی مقصد بناتے ہیں تو ، یہ آپ کو غلطی پھینک دیتی ہے جیسے ازگر کے کام آپ کو خلاصہ کلاس کا کوئی مقصد پیدا کرنے کی اجازت نہیں دیتا ہے۔ لیکن وراثت کا استعمال کرتے ہوئے ، آپ دراصل پراپرٹی کا وارث ہوسکتے ہیں اور متعلقہ کام انجام دے سکتے ہیں۔

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

ہمارے لئے ایک سوال ہے؟ براہ کرم اس 'ازگر کلاس' بلاگ کے تبصرے سیکشن میں اس کا تذکرہ کریں اور ہم جلد از جلد آپ کے پاس مل جائیں گے۔

ازگر کے مختلف اطلاق کے ساتھ گہرائی سے علم حاصل کرنے کے ل you ، آپ کر سکتے ہیں ہماری براہ راست آن لائن تربیت کے ساتھ 24/7 سپورٹ اور تاحیات رسائی۔