JavaRush /جاوا بلاگ /Random-SD /جاوا ۾ انٽرفيس
vinsler
سطح

جاوا ۾ انٽرفيس

گروپ ۾ شايع ٿيل
مان هڪ خراب ڪهاڻيڪار آهيان جيڪڏهن منهنجو مقصد نه آهي ته ڪنهن خاص درخواست سان ڪنهن کي سمجھ ۾ نه اچڻ واري شيءِ جي وضاحت ڪريان، تنهن ڪري مان سمجهان ٿو سادي شيون، ۽ هڪ شيءِ لاءِ آئون ان بابت هتي لکندس. مان جاوا رش جي تعليم واري مثال جي پيروي نٿو ڪريان ته پهريان هڪ سوال پڇڻ ۽ پوءِ توهان کي ٻڌايو ته اهو ڪيئن ڪجي. مان پهريان ٻڌائڻ ۽ پوءِ پڇڻ جو حامي آهيان، جيئن ٻڌائڻ سان، پهرين ڏيکارڻ ۽ پوءِ وضاحت ڪرڻ.
جاوا ۾ انٽرفيس - 1
BS: ڪارناما == رويي، انھن کي مترادف طور وٺو، ڪارناما وڌيڪ صحيح طور تي سمجھيا ويا آھن، اھو ھميشه ڪجھھ چالو آھي، ۽ رويي کي ڪجھھ ڏيکاري نٿو سگھي.

انٽرفيس- انٽرفيس

هي ڇا آهي؟ مثال انٽرفيس لسٽنگ (عام سان):
public interface Store<T, ID> {
    void add(T t);
    void update(T t, ID i);
    void delete(ID i);
    T findOne(ID i);
    List<T> findAll();
}
عام ڪرڊ (CRUD کان: ٺاھيو، پڙھو، تازه ڪاري، حذف ڪريو) انٽرفيس. پريشان نه ٿيو، هر شيء بلڪل سادو آهي. هن انٽرفيس جو مطلب آهي ته ڪيترن ئي ڊيٽابيس سان ڪم ڪرڻ هيٺ ڏنل اصول تي ٻڌل آهي: توهان کي رڪارڊ شامل ڪرڻ جي ضرورت آهي، هڪ رڪارڊ کي اپڊيٽ ڪرڻ، حذف ڪرڻ ۽ سڀ رڪارڊ ڳولڻ جي ضرورت آهي. توهان هن پار ايندا 100 وڌيڪ ڀيرا ۽ لڳ ڀڳ هڪ ئي انٽرفيس پاڻ لکندا ڀيرا جي ساڳئي تعداد. اهو عوامي نامزد ڪيو ويو آهي ڇاڪاڻ ته اهو لازمي طور تي لاڳو ڪيو وڃي طبقي طرفان. ڪلاس پاران لاڳو ٿيڻ جو ڇا مطلب آهي ؟ هر شيء بلڪل سادو آهي: اهو انٽرفيس جي سڀني طريقن کي بيان ڪرڻ گهرجي. ڪلاس ۾ عمل درآمد جو آسان مثال:
void add (T t) {
	bookstore.add(t);
}
T t جي بدران، هڪ خاص عام کي متبادل بڻايو ويندو. مختصر ۾، هي هڪ متغير جو TYPE آهي، ڇو ته اهو اڪثر ڪري T = قسم جي طور تي ظاهر ڪيو ويندو آهي. اسان جي مثال ۾، اچو ته اهو هن طرح ٿي سگهي ٿو:
void add (Book book) {
	bookstore.add(book);
}
قدرتي طور تي، ڪتاب ڪتاب جي جاء تي توهان ڪنهن به متغير کي متبادل ڪري سگهو ٿا جيڪو توهان جي عمل درآمد لاء گهربل آهي. سمجھڻ لاءِ، توھان نظرياتي طور تي تصور ڪري سگھو ٿا ته T = Object، ۽ جيئن ته جاوا ۾ سڀڪنھن شيءِ آبجیکٹ آھي، تنھنڪري توھان اُتي پنھنجي ڪنھن به ڪلاس/متغير کي به بيان ڪري سگھو ٿا. صرف مصيبت بعد ۾ پيدا ٿيندي - استثنا جيڪڏهن ڪلاس صفر آهي، وغيره. ان جي پنهنجي لفظن ۾، اهو هڪ خاص پروگرام جي جوڙجڪ آهي جيڪا شين جي وچ ۾ لاڳاپا بيان ڪري ٿي انهن کي ڪجهه رويي جي حصن ۾ ورهائي. هڪ انٽرفيس جو مقصد هڪ طبقي طرفان عمل درآمد لاءِ ڪارڪردگيءَ جي وضاحت ڪرڻ آهي. اهو آهي، طريقن جي دستخط جي وضاحت. انٽرفيس جي اندر طريقن جا نالا آهن جيڪي واپسي ۽ ان پٽ قدر، ۽ اهو ئي آهي. يقينن، توهان اڃا تائين اتي ڪجهه متغير نامزد ڪري سگهو ٿا، پر اهي فوري طور تي عوامي جامد فائنل بڻجي ويندا آهن، ۽ پروگرام جي ڪنهن به حصي کان رسائي ڪري سگهجي ٿو. انٽرفيس ڪارناما بيان ڪري ٿو، ۽ تنهن ڪري اهي ساڳيون ڪارناما ان ۾ شامل آهن، يعني. ڪم يا طريقا. اهو ڇو ضروري آهي؟ هي ڇا آسان بڻائي ٿو يا اهو ڪهڙو فائدو ڏئي ٿو؟ عملن ۽ رويي جي وضاحت کي آسان ڪرڻ. اسان چئون ٿا ته ڇا ڪجي، پر هر ڪلاس لاڳو ڪندو آهي ته اهو ڪيئن ڪجي. وڏن منصوبن تي وقت بچايو. انٽرفيس انهن حالتن ۾ ٺاهيا ويا آهن جتي اسان ڄاڻون ٿا ته اسان کي ڪجهه ڪم ڪرڻ جي ضرورت آهي، پر اهو ڪيئن ڪجي مختلف ٿي سگهي ٿو. انٽرفيس ڪارناما جا نالا بيان ڪري ٿو - اهو صرف ڪجهه تجريد جي هدايت آهي. جيتوڻيڪ اتي به ٿي سگهي ٿو انٽرفيس بغير طريقن ۽ شعبن جي، جهڙوڪ مارڪر جهڙوڪ ڪلون ايبل، ريموٽ وغيره. اچو ته هر ڪنهن جي پسنديده مثال وٺو ڪار جو. ان ۾ انٽرفيس ڪار جي ممڪن عملن کي بيان ڪندو، اسٽيرنگ ويل کي ڦيرائڻ يا حرڪت جي هدايت، رفتار حاصل ڪرڻ، باقي پيٽرول وغيره. اهو آهي، ساڳيون ڪارناما جيڪي بلڪل ڪنهن ڪار ۾ هوندا. ٻين لفظن ۾، اسان تباهيءَ جي جهنگ ۾ پهتاسين ته پهرين ڪار جي تخليق جي هيٺين سطح تي ۽ پنهنجي دماغ سان اهو معلوم ڪريون ٿا ته اها ڪيئن ٺاهي وئي ۽ ان ۾ ڇا هو. قدرتي طور، اسان هن کي خلاصي ۾ بيان ڪريون ٿا ۽ صرف عملن لاءِ. پهرين ڪار ڪهڙي هئي؟ اتي ڪو اسٽيرنگ ويل هو؟ اهو هو، جنهن جو مطلب آهي ته اهو ڪنهن هنڌ ڦري رهيو هو، اسٽيرنگ ويل/حرڪت جو رخ. ڇا اتي ڦيٿيون هيون؟ ها، ان جو مطلب آهي ته مان ڪجهه رفتار تي ڊرائيونگ ڪري رهيو هوس، رفتار ۾ تبديلي. اهو سڄو انٽرفيس آهي. پر عام طور تي، انٽرفيس ٺاهيا ويا آهن ڪجهه عملن تي عمل ڪرڻ لاءِ. اهي. اسان هڪ پروگرام لکون ٿا وڌيڪ مخصوص ماڻهن لاءِ ان کان سواءِ ڪنهن ٻئي جي لاءِ جيڪو توهان سوچي سگهو ٿا. تنهن ڪري، انٽرفيس پاڻ ۾ واضح ۽ وڌيڪ مخصوص طريقن تي مشتمل هوندي. يقينا، اهي ممڪن طور تي خلاصا هوندا. انٽرفيس هڪ ٻئي کان وراثت ۾ ورثي ۾ ٿي سگهن ٿا.
interface MyInterface extends NotMyinterface;
انٽرفيس ڪلاس ۾ لاڳو ڪيا ويا آهن. توھان لاڳو ڪري سگھوٿا گھڻن انٽرفيس کي جيئن توھان چاھيو. وراثت جي برعڪس، صرف هڪ کان وراثت.
class NewClass extends OldClass implements MyInterface, NotMyinterface;
اهي. اسان ڪجھ عملن سان گڏ آياسين، انھن کي نالا ڏنائون، ڊيٽا داخل ڪيو، ڊيٽا واپس آڻيو، اھو سڀ انٽرفيس ۾ لکيو، پوءِ ھڪڙو ڪلاس ٺاھيو ۽ پنھنجي انٽرفيس کي ھن ڪلاس ۾ شامل ڪيو، يعني. هن ڪلاس ۾ اسان جي انٽرفيس کي لاڳو ڪيو. وڌيڪ، انٽرفيس ۾ بيان ڪيل سڀني طريقن / ڪمن کي لازمي طور تي عمل ڪرڻ گهرجي. اهو سڌو سنئون انٽرفيس ۾ ئي ڪري سگهجي ٿو لفظ ڊفالٽ کي شامل ڪندي ميٿڊ کان اڳ ۽ عمل کي سڌو طريقي سان لکڻ سان، ڪلاس وانگر. اهو ممڪن ٿيو جاوا جي نسخي 8 سان. اهو پڻ هڪ طبقي ۾ ٿي سگهي ٿو جيڪو هن انٽرفيس کي لاڳو ڪندو. خير، اسان انٽرفيس لکيو آهي، ان کي ڪلاس ۾ لاڳو ڪيو، ڪلاس ۾ عمل درآمد ڪيو، اسان ان کي هلائي سگھون ٿا ۽ ان کي آزمائي سگهون ٿا. توھان پڻ انٽرفيس ۾ پڙھي سگھو ٿا بابت:
  • جامد طريقا.
  • ذاتي طريقا. (ڪوڊ ورجائي)
  • متغير/مستقل.
  • Nested interfaces.
پر اهو بهتر آهي ته اهو بعد ۾ ڪيو وڃي، ۽ اهو پڻ نقصانڪار آهي ته توهان جو مٿو تمام گهڻو ڀرجي. دلچسپ سوال، وولوو ڇا آهي؟ ڪلاس يا انٽرفيس؟
line1: Volvo v = new VolvoV2();
line2: Volvo v = new VolvoV3();
انٽرفيس جي اضافي ۾، اهو خلاصو ڪلاس ۽ ڪلاس بابت جاري رکڻ جي قابل آهي. ٿي سگهي ٿو بعد ۾، جڏهن مون وٽ ٻه ڪلاڪ وڌيڪ مفت آهن. ))) پي ايس: دوست، آئون پوسٽ جي تحت يا پي ايم ۾ سڀني تنقيد لاء پڇان ٿو، مان سمجهان ٿو ته هر ڪنهن وٽ آهي))) ۽ مان هميشه ان کي ٻڌڻ ۾ دلچسپي رکندو آهيان، ڇو ته اهو هڪ سبب آهي جيڪو ٿورڙي بهتر ٿي سگهي ٿو ۽ ٻيهر اڳتي وڌڻ جاري رکو. انهي سان گڏ، توهان سڀني جي مهرباني ۽ پروگرامنگ ۾ سٺي قسمت. )))
تبصرا
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION