جاوا میں مارکر انٹرفیس کو کیسے نافذ کریں؟



یہ مضمون آپ کو جاوا میں مارکر انٹرفیس کے نام سے انٹرفیس کے ایک دلچسپ پہلو پر تفصیل سے آگاہ کرے گا اور اس پر عمل درآمد کے بعد اس کی پیروی کرے گا۔

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

ابتدائیوں کے لئے مائیکروسافٹ SQL سرور سرور

تو آئیے ہم شروع کریں ،





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

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں



سیریلایجلیبل انٹرفیس

جاوا میں سیریلائزیشن کو کسی شے کی حالت کو بائٹ اسٹریم میں تبدیل کرنے کے عمل کے طور پر بیان کیا جاسکتا ہے۔ اس کو سیریلائج ایبل انٹرفیس کے ذریعے حاصل کیا جاسکتا ہے جو java.io.package میں موجود ہے۔ واضح رہے کہ سیریلائزیبل کلاس کی تمام ذیلی قسمیں خود سیریلائئبل ہیں۔

مثال:

درآمد java.io. * کلاس مین سیریلائز ایبل {انٹ جے اسٹرنگ s // ایک کلاس کنسٹرکٹر پبلک مین (INT جے ، اسٹرنگ s) {this.j = j this.s = s}} پبلک کلاس ٹیسٹ {پبلک جامد باطل اہم (سٹرنگ [] آرگس) نے IOException ، ClassNotFoundException {مین آبجیکٹ = نیا مین (25 ، 'ہیلوورلڈ') پھینک دیا // سیریللائزنگ 'آبجیکٹ' فائل آؤٹ اسٹریم fos = نئی فائل آؤٹ پٹ اسٹریم ('pqr.txt') آبجیکٹ آؤٹ پٹ اسٹریم آؤس = نیا آبجیکٹ آؤٹ اسٹریم (fos) .writeOb آبجیکٹ (اعتراض) // ڈی سیریلائزنگ 'آبجیکٹ' فائل آئین پٹ اسٹریم fis = نئی فائل ان پٹسٹریم ('pqr.txt') آبجیکٹ ان پٹسٹریم ois = نیا آبجیکٹ انپٹسٹریم (فس) مین بی = (مین) ois.readObject () // نیچے کاسٹنگ آبجیکٹ System.out.println (b.j + '' + bs) // بند ہونے والی دھاریاں oos.close () ois.close ()}}

آؤٹ پٹ:
25 ہیلوورلڈ



جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

کلون ایبل انٹرفیس:

یہ انٹرفیس java.lang پیکیج میں پایا جاسکتا ہے۔ کلوننگ ایک نقل پیدا کرنے کا طریقہ کار ہے یا کسی مختلف نام کی کسی شے کی قطعی کاپی تیار کرنا۔
کلون ایبل انٹرفیس کو کسی طبقے کے ذریعہ نافذ کیا جاتا ہے تاکہ آبجیکٹکلیوون () کے طریقہ کار کی نشاندہی کی جاسکے کہ اس طبقے کی مثالوں کی فیلڈ فار فیلڈ کاپی بنانا اس طریقہ کے لئے قانونی ہے۔
ایک کلو نٹ سپورٹ ایکسپسیشن ایک ایسے طبقے کے لئے پھینک دی جاتی ہے جو کلونبل انٹرفیس کو نافذ کیے بغیر کلون کے طریقہ کار کی مدد کرتا ہے۔

مثال:

درآمد java.lang. کلونایبل کلاس جاوا کلون کلونئبل {انٹ j اسٹرنگ s // نفاذ کلاس کنسٹرکٹر عوامی javaClone (int j ، سٹرنگ s) {this.j = j this.s = s} // اووررائڈنگ کلون () طریقہ @ اوور رائڈ محفوظ آبجیکٹ کلون () کلوننوٹ سپورٹ ایکسپریشن {ریٹرن سوپر کولون ()}} عوامی کلاس مین {عوامی جامد باطل اہم (سٹرنگ [] آرگس) کو پھینک دیتا ہے کلوننوٹ سپورٹ ایکسپریشن ava جاوا کلون سی = نیا جاوا کلون (18 ، 'ہیلوورلڈ') // کلوننگ c 'اور انعقاد // میں نئے کلونڈ آبجیکٹ ریفرنس b // نیچے کاسٹنگ javaClone b = (javaClone) c.clone () System.out.println (bj) System.out.println (bs)}}

آؤٹ پٹ:
18
ہیلو ورلڈ

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

ریموٹ انٹرفیس:

ریموٹ آبجیکٹ کو کسی شے کی حیثیت سے تعبیر کیا جاسکتا ہے جس کے طریقوں کو مختلف JVM سے ممکنہ طور پر کسی دوسرے میزبان سے لگایا جاسکتا ہے۔ یہ انٹرفیس java.rmi پیکیج میں پایا جاتا ہے۔ کسی ریموٹ آبجیکٹ کو براہ راست یا بالواسطہ طور پر اس طریقے کو لاگو کرنا ہوگا۔

RMI:

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

جاوا میں ترجمان کیا ہے؟

ضد:

ایک اسٹاب کو کسی شے کی حیثیت سے تعبیر کیا جاسکتا ہے جو مؤکل کی طرف موجود ہوتا ہے اور ریموٹ آبجیکٹ کی نمائندگی کرتا ہے۔ یہ ایک انفارمیشن بلاک تشکیل دیتا ہے جس پر مشتمل ہوتا ہے:
remote ریموٹ آبجیکٹ کا شناخت کنندہ
method اس طریقہ کار کا نام جو طلب کرنا ہے
remote دور دراز کے JVM کے پیرامیٹرز

ڈھانچہ:

کنکال آبجیکٹ کا بنیادی کام اسٹاب سے ریموٹ آبجیکٹ تک درخواستوں کو منتقل کرنا ہے۔ اس کے علاوہ ، یہ نیچے دیئے گئے کاموں کو بھی انجام دیتا ہے۔
α یہ اصل ریموٹ آبجیکٹ پر مطلوبہ طریقہ کی درخواست کرتا ہے
remote ریموٹ آبجیکٹ کے لئے مخصوص پیرامیٹر پڑھتا ہے

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

ریموٹ انٹرفیس کو نافذ کرنے کے اقدامات:

ریموٹ انٹرفیس کی وضاحت کریں:

درآمد java.rmi. * عوامی انٹرفیس AddAll کی ریموٹ میں توسیع {عوامی INT اضافہ (INT ، int s) ریموٹ ایکسپریشن th

یہاں ، ریموٹ انٹرفیس میں توسیع کی گئی ہے ، اور ریموٹ انٹرفیس کے ریموٹ انٹرفیس کے تمام طریقوں کے ساتھ اعلان کیا گیا ہے۔

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

ریموٹ انٹرفیس کو نافذ کریں:

ریموٹ انٹرفیس پر عمل درآمد فراہم کرنے کے دو طریقے ہیں:
Un UnicastRemoteObject کلاس میں اضافہ کریں
ic UnicastRemoteObject کلاس کا ایکسپورٹ آبجیکٹ () طریقہ استعمال کریں

درآمد java.rmi. * درآمد java.rmi.server. * عوامی کلاس AddAllRemote میں توسیع UnicastRemoteObject نافذ اڈڈر A AddAllRemote () پھینک دیتا ہے ریموٹ ایکسیپشن {سپر ()} پبلک انٹ ایڈ (int r، int s) {واپسی r + s}}

rmic (rmi compiler) کا استعمال کرتے ہوئے ، اسٹب اور کنکال آبجیکٹ تیار کریں۔

stub اور skeleton اشیاء کو rmi compiler استعمال کرکے تشکیل دیا جاسکتا ہے۔ آر ایم آئی ٹول اشیاء کو تخلیق کرنے کے لئے RMI مرتب کی درخواست کرتا ہے۔
rmic AddAllRemote

rmiregistry ٹول کا استعمال کرتے ہوئے ، رجسٹری سروس شروع کریں۔

رجسٹری سروس rmregistry ٹول کا استعمال کرکے شروع کی جاسکتی ہے۔ اگر صارف کے ذریعہ بیان نہ کیا گیا ہو تو پہلے سے طے شدہ پورٹ نمبر استعمال ہوتا ہے۔
rmiregistry 5000

Def __init__ ازگر

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

ریموٹ ایپلی کیشن بنائیں اور شروع کریں۔

درآمد java.rmi. * درآمد java.rmi.registry. * عوامی کلاس سرور {عوامی جامد باطل اہم (سٹرنگ آرگز []] {کوشش کریں {اڈ اسٹیل اسٹاب = نیا اڈ ایل ریموٹ () Naming.rebind ('rmi: // localhost: 5000 / sak '، stub)} کیچ (استثنا e) {System.out.println (e)}}}

مندرجہ بالا مثال میں ریموٹ آبجیکٹ نام sak کے پابند ہے۔

جاوا میں مارکر انٹرفیس پر اس مضمون کے ساتھ آگے بڑھ رہے ہیں

کلائنٹ کی درخواست بنائیں اور شروع کریں۔

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

درآمد java.rmi. * عوامی کلاس کلائنٹ {عوامی جامد باطل اہم (سٹرنگ آرگس []) {کوشش کریں {اڈ اllل اسٹب = (ایڈیول) نام لگانا۔ ('rmi: // لوکلہوسٹ: 5000 / سیک') سسٹم آؤٹ.پریٹلن (stub.add (29،18))} کیچ (رعایت ای) {}}

کسی مختلف مشین سے ریموٹ آبجیکٹ تک رسائی کے ل To ، مقامی میزبان کا نام تبدیل کرنا ضروری ہے IP ایڈریس یا میزبان نام جہاں ریموٹ آبجیکٹ واقع ہے۔

کوڈ کی درجہ بندی کرنے کا ایک موثر طریقہ مارکر انٹرفیس کا استعمال کرتے ہوئے حاصل کیا جاسکتا ہے۔

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

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