جامد (کلاس) طریقہ اور مثال کے طریقہ کار میں کیا فرق ہے؟


جواب 1:

مثال کے طریقے

  • یہ وہ طریقے ہیں جن کے نام سے پہلے اپنے طبقے کے کسی چیز کو تخلیق کرنے کی ضرورت ہوتی ہے۔ ان کا تعلق طبقے کی اشیاء سے ہوتا ہے نہ کہ کلاس سے ، لہذا انہیں تب ہی کہا جاسکتا ہے جب اعتراض تخلیق کیا جاتا ہے۔ جب بھی کوئی نیا اعتراض نیا تخلیق ہوتا ہے۔ مثال کے طریقہ کی نقل اسی فرد کے لئے تیار کی گئی ہے۔ لہذا اگر ایک کلاس کے لئے 10 آبجیکٹ تیار کی گئیں تو مثال کے طریقوں کی 10 کاپیاں بنائیں گیں۔ جو رن ٹائم کے دوران زیادہ میموری استعمال کرتا ہے۔ انسٹینس کا طریقہ متحرک پابندی کا استعمال کرتا ہے تاکہ رن ٹائم کے وقت ان کو اوور رائیڈ کیا جاسکے۔
// مثال کے طریقہ تک رسائی کی مثال بنائیں۔ کلاس A {تار نام = ""؛ پبلک باطل abc (سٹرنگ کا نام) {// مثال کا طریقہ this.name = name؛ }} کلاس B {عوامی جامد باطل اہم (سٹرنگ [] آرگس) {A اعتراض = نیا A ()؛ // کلاس A آبجیکٹ aab.abc ("یہ مثال کا طریقہ ہے")؛ // کلاس A سسٹم سے مثال کے طور پر طریقہ کال کرنا۔ }

جامد طریقہ

  • یہ وہ طریقے ہیں جن کو کلاس کا مقصد استعمال کیے بغیر کہا جاسکتا ہے۔ یہ خود طبقاتی نام کے ذریعہ حوالہ دیتے ہیں یا اس طبقے کے اعتراض کا حوالہ دیتے ہیں۔ انہیں کلاسوں کی اشیاء پیدا کیے بغیر بھی کہا جاسکتا ہے ، جس کی وجہ سے رن ٹائم میں میموری کا استعمال کم ہوجاتا ہے جیسے کہ مثال کے طریقوں کے مقابلے میں۔ وہ جامد بائنڈنگ کا استعمال کرتے ہیں تاکہ انھیں اوور رائیڈ نہیں کیا جاسکتا ہے لیکن ان کو مرتب وقت پر اوور لوڈ کیا جاسکتا ہے۔
// مثال کے طور پر طبقے کے جامد طریقہ تک رسائی حاصل کرنا۔ کلاس A {عوامی جامد اسٹرنگ yourName = ""؛ عوامی جامد باطل ABC (سٹرنگ کا نام) {yourName = name؛ }} کلاس بی {عوامی جامد باطل اہم (سٹرنگ [] آرگس) {اے اے بی سی ("اومکار")؛ // طبقاتی نام کے بذریعہ خود جامد طریقہ abc () اور // فیلڈ تک رسائی۔ سسٹم.اٹ.پرنٹلن (A.yourName)؛ // آبجیکٹ کا حوالہ استعمال کرکے جامد طریقہ abc () تک رسائی حاصل کرنا۔ ایک اعتراض = نیا A ()؛ اعتراض.abc ("آدتیہ")؛ سسٹم.اٹ.پرنٹلن (اعتراض.یور نام)؛ }

جواب 2:

جامد طریقہ کلاس کا ایک ممبر ہوتا ہے جس تک کلاس کی مثال قائم کیے بغیر بھی اس تک رسائی حاصل کی جاسکتی ہے جہاں مثال کے طور پر طریقہ کلاس کا ممبر ہوتا ہے جس تک کلاس کی مثال کے ذریعہ اس تک رسائی حاصل کی جاسکتی ہے۔

کلاس کے کسی مستحکم ممبر سے کلاس کی مثال قائم کیے بغیر رسائی حاصل کی جاسکتی ہے جبکہ کلاس کے مثال سے کلاس کے ممبر تک رسائی حاصل کی جاسکتی ہے۔

اس ممبر کو کوڈ کے منظرناموں میں استعمال کیا جاسکتا ہے جس کے لئے مثال کی ضرورت نہیں ہے۔

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