জাভাতে এক্সটার্নালাইজেশন কী এবং কখন এটি ব্যবহার করবেন?

জাভাতে এক্সটার্নালাইজেশন জাভা ক্লাসটি বাইট স্ট্রিমে সংরক্ষণ করতে ব্যবহৃত হয়। যে শ্রেণীর বহিরাগত হওয়া দরকার, তাকে অবশ্যই বহির্মুখী ইন্টারফেস প্রয়োগ করতে হবে।

জাভা সিরিয়ালাইজেশন খুব দক্ষ নয়। যদিআপনি প্রচুর বৈশিষ্ট্য এবং বৈশিষ্ট্যযুক্ত পুষ্পিত বস্তুগুলিকে সিরিয়ালাইজ করেছেন, আপনি ক্রমিকায়িত করতে চান না। এখানেই জাভাতে এক্সটার্নালাইজেশন ছবিতে আসে। এই নিবন্ধটি আপনাকে বাহ্যিকরণের কাজ বুঝতে সহায়তা করবে understand



চল শুরু করি!



জাভাতে বহিরাগতকরণ কী?

জাভাতে বহিরাগতকরণ যখনই আপনার কাস্টমাইজ করার দরকার হয় তখন ব্যবহার করা হয় সিরিয়ালাইজেশন পদ্ধতি. যদি কোনও শ্রেণি বহিরাগত ইন্টারফেস প্রয়োগ করে তবে অবজেক্টটির সিরিয়ালাইজেশন পদ্ধতিটি ব্যবহার করে করা হবে বাইরের () । যখন কোনও বাহ্যিক অবজেক্টটি রিসিভারের শেষে পুনর্গঠন করা হয়, নো-আর্গুমেন্ট কনস্ট্রাক্টর ব্যবহার করে একটি উদাহরণ তৈরি করা হবে এবং এই পদ্ধতিটি বলা হয় readExtern ()।

এটি মূলত কাস্টম সিরিয়ালাইজেশনের উদ্দেশ্যে কাজ করে, যেখানে আপনি কোনও স্ট্রিমে কী সঞ্চয় করবেন তা সিদ্ধান্ত নিতে পারেন।



আপনি কখন বহিরাগত ব্যবহার করবেন?

আপনি যদি সিরিয়াল করতে চান তবে এর একটি অংশ অবজেক্ট , তাহলে বহিরাগতকরণ সেরা বিকল্প। আপনাকে কেবল কোনও অবজেক্টের প্রয়োজনীয় ক্ষেত্রগুলি ক্রমিক করতে হবে।

বহিরাগত ইন্টারফেস কি?

সিরিয়ালাইজেশন এবং ডি-সিরিয়ালাইজেশন প্রক্রিয়া চলাকালীন আপনি যদি অবজেক্টগুলি পড়ার এবং লেখার প্রক্রিয়াটি নিয়ন্ত্রণ করতে চান তবে আপনার অবশ্যই অবজেক্টের শ্রেণিটি ইন্টারফেস প্রয়োগ করতে হবে java.io.Externizable । কেবলমাত্র তখনই আপনি অবজেক্টের রাজ্যগুলি পড়তে এবং লিখতে নিজের কোড প্রয়োগ করতে পারেন। পদ্ধতিগুলি, বাহ্যিক () এবং বাইরের () দ্বারা সংজ্ঞায়িত করা হয় বাহ্যিক ইন্টারফেস

আসুন বিস্তারিতভাবে এই পদ্ধতিগুলি বুঝতে পারি।



পঠনজাতীয় (অবজেক্ট ইনপুট ইন)

ইন্টারফেসের অবজেক্টটি এই পদ্ধতিটি প্রয়োগ করে যা এর পদ্ধতিগুলিকে কল করে এর বিষয়বস্তুগুলি পুনরুদ্ধারে সহায়তা করেডাটা প্রবেশআদিম ধরণের জন্য। এটি কলও করেপড়ুনবজেক্টবস্তু, স্ট্রিং এবং অ্যারেগুলির জন্য। এখন আসুন কীভাবে এই পঠনীয় অভ্যন্তরীণ পদ্ধতিটি প্রয়োগ করতে হয় তা নিয়ে আলোচনা করা যাক।

জাভাতে পুনরায় ব্যবহারকারীর ব্যবহার

এই হিসাবে বাহ্যিক () পদ্ধতি লাগে একটি অবজেক্ট ইনপুট , আপনি এই বিধিগুলির অন্তর্নিহিত স্ট্রিম থেকে অবজেক্টের রাজ্যগুলি পড়তে এর পদ্ধতিটি ব্যবহার করতে পারেন:

  • আদিম ধরণের জন্য, আপনি এটি ব্যবহার করতে পারেন রিড এক্সএক্সএক্স () পদ্ধতি ডাটা প্রবেশইন্টারফেস. তারা হ'ল পড়ুন বুলিয়ান (), রিডবাইট (), পড়ুন, পড়ুন দীর্ঘ ()।
  • আপনার যদি স্ট্রিংস, অ্যারে, আপনার যে কোনও কাস্টমসের মতো অবজেক্টের ধরণ থাকে ক্লাস , আপনি ব্যবহার পড়ুনউবজেক্ট () পদ্ধতি

উদাহরণ:

সর্বজনীন শূন্য পঠনঘটিত (অবজেক্টইনপুট ইন) ক্লাসনটফাউন্ডএক্সেপশন, আইওএক্সেপশন {this.code = in.readInt () this.name = (স্ট্রিং) in.readObject () this.password = (স্ট্রিং) ইন.ড্রেডবজেক্ট () this.birthday = ( তারিখ) in.readObject ()}

আপনি এখানে দেখতে পাচ্ছেন, আমি নিম্নলিখিত বৈশিষ্ট্যগুলি ডি-সিরিয়ালযুক্ত করেছি: কোড, নাম, পাসওয়ার্ড এবং জন্মদিন।

WritExtern (অবজেক্টআউটপুট আউট)

ইন্টারফেসের অবজেক্টটি আদিম মানের জন্য ডেটাআউটপুট এর পদ্ধতিগুলিতে কল করে বা কলটিটি কল করে বিষয়বস্তুগুলি সংরক্ষণ করার জন্য এই পদ্ধতিটি প্রয়োগ করে WritObject বস্তু, স্ট্রিং এবং অ্যারেগুলির জন্য অবজেক্টআউটপুট পদ্ধতি for এখন, এর বাস্তবায়ন প্রক্রিয়াটি দেখে নেওয়া যাক।

এই হিসাবে বাইরের () পদ্ধতি লাগে একটিঅবজেক্টআউটপুট, অন্তর্নিহিত স্ট্রিমে অবজেক্টের রাজ্যগুলি লিখতে আপনি এই পদ্ধতিটি ব্যবহার করতে পারেন এই বিধিগুলি অনুসরণ করুন:

  • আদিম ধরণের জন্য, ব্যবহার করুন লিখন এক্সএক্সএক্স () পদ্ধতি ডাটাআউটপুটইন্টারফেস, মত লিখনবুলিয়ান (), লিখনবাইট (), লেখ, লেখার দীর্ঘ ()ইত্যাদি
  • মত বস্তুর জন্য , অ্যারে , আপনার কাস্টম ক্লাস, আপনি এটি ব্যবহার করতে পারেন লেখার অবজেক্ট () পদ্ধতি

উদাহরণ:

সর্বজনীন শূন্য রাইটিংএক্সটার্নাল (অবজেক্টআউটপুট আউট) নিক্ষেপ করে IOException {out.writeInt (কোড) out.writeObject (নাম) // খালি পাসওয়ার্ড লিখুন: out.writeObject ('') আউট.উইরটঅবজেক্ট (জন্মদিন)}

যাইহোক, এখানে, আপনি দেখতে পাচ্ছেন যে আমি নিম্নলিখিত বৈশিষ্ট্যগুলি সিরিয়ালযুক্ত করেছি: কোড, নাম, পাসওয়ার্ড এবং জন্মদিন।

এখন, জাভা নিবন্ধের এই বহিরাগতকরণের পরবর্তী বিষয়ের দিকে এগিয়ে যাওয়া যাক, জাভায় বহিরাগতকরণ এবং সিরিয়ালাইজেশনের মধ্যে প্রধান পার্থক্যগুলি নিয়ে আলোচনা করা যাক।

বহিরাগতকরণ বনাম সিরিয়ালাইজেশন: বহির্মুখীকরণ এবং সিরিয়ালাইজেশনের মধ্যে পার্থক্য

এটি প্রায়শই জিজ্ঞাসিত একটি

পরামিতিবাহ্যিকরণসিরিয়ালাইজেশন
প্রক্রিয়াকাস্টম সিরিয়ালাইজেশন প্রক্রিয়া ব্যবহার করেডিফল্ট সিরিয়ালাইজেশন প্রক্রিয়া ব্যবহার করে
ইউআইডিইউআইডির দরকার নেইএটির সিরিয়াল ভার্সনওয়েড দরকার needs
স্টোরেজআপনাকে এমন ডেটা সংরক্ষণ করতে হবে যাতে একটি অবজেক্ট থাকেআপনি সরাসরি অবজেক্টটি সঞ্চয় করতে পারেন
অ্যাক্সেসবহির্গমনযোগ্য ইন্টারফেসটি অ্যাপ্লিকেশনটিতে সিরিয়ালাইজেশন প্রক্রিয়াটির সম্পূর্ণ নিয়ন্ত্রণ সরবরাহ করে।
এরকম কোনও অ্যাক্সেস নেই

আমি আশা করি আপনি ছেলেরা এক্সটার্নালাইজেশন বনাম সিরিয়ালাইজেশনের সাথে পরিষ্কার। সুতরাং এর সাথে, আমরা 'জাভাতে বহিরাগতকরণ' সম্পর্কিত এই নিবন্ধটির শেষে এসেছি। আশা করি আপনারা আপনার সাথে ভাগ করা বিষয়গুলি নিয়ে পরিষ্কার।

আমি আশা করি উপরে বর্ণিত সামগ্রীটি আপনার বাড়ানোর ক্ষেত্রে সহায়ক হিসাবে প্রমাণিত হয়েছে জ্ঞান. পড়া চালিয়ে যান, অন্বেষণ করতে থাকুন!

এছাড়াও চেক আউট এডুরেকা, বিশ্বস্ত জুড়ে 250,000 এরও বেশি সন্তুষ্ট শিক্ষার্থীর নেটওয়ার্ক সহ একটি বিশ্বস্ত অনলাইন লার্নিং সংস্থা by এডুরেকার জাভা জে 2 ইই এবং এসওএ প্রশিক্ষণ এবং শংসাপত্রের কোর্সটি এমন শিক্ষার্থী এবং পেশাদারদের জন্য তৈরি করা হয়েছে যারা জাভা ডেভেলপার হতে চান। কোর্সটি আপনাকে জাভা প্রোগ্রামিংয়ে একটি প্রধান সূচনা দেওয়ার জন্য এবং বিভিন্ন এবং উভয় মূল এবং উন্নত জাভা ধারণার জন্য আপনাকে প্রশিক্ষণের জন্য তৈরি করা হয়েছে হাইবারনেট অ্যান্ড স্প্রিংয়ের মতো।