মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য

সুচিপত্র:

মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য
মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য

ভিডিও: মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য

ভিডিও: মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য
ভিডিও: C# - উত্তরাধিকার | সরল, বহুস্তরীয়, একাধিক এবং শ্রেণিবদ্ধ উত্তরাধিকার 2024, নভেম্বর
Anonim

কী পার্থক্য – একাধিক বনাম বহুস্তরীয় উত্তরাধিকার

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

একাধিক উত্তরাধিকার কি?

মাল্টিপল ইনহেরিটেন্স হল যখন একটি ক্লাস একাধিক বেস ক্লাসের উত্তরাধিকারী হয়।

একাধিক এবং বহুস্তরীয় উত্তরাধিকারের মধ্যে পার্থক্য
একাধিক এবং বহুস্তরীয় উত্তরাধিকারের মধ্যে পার্থক্য

চিত্র 01: একাধিক উত্তরাধিকার

A B এবং C ক্লাস। A এবং B হল বেস ক্লাস, এবং C হল উদ্ভূত শ্রেণী। C ক্লাসকে বেস ক্লাস A এবং B উভয়ের নির্ভরতা পরিচালনা করতে হবে। একাধিক উত্তরাধিকার সফ্টওয়্যার প্রকল্পগুলিতে ব্যাপকভাবে ব্যবহৃত হয় না। এটি সিস্টেমকে আরও জটিল করে তোলে কারণ একটি শ্রেণী অনেক শ্রেণীর উত্তরাধিকারী হয়৷

উদাহরণস্বরূপ, অনুমান করুন যে ক্লাস A এবং B উভয়েরই একই নামের একটি পদ্ধতি রয়েছে যা যোগফল() এবং ক্লাস C উভয় শ্রেণির উদ্ভব। টাইপ সি এবং কলিং যোগ () পদ্ধতির একটি অবজেক্ট তৈরি করার পরে, এটি একটি ত্রুটি সৃষ্টি করতে পারে কারণ উভয় ক্লাসেই একই পদ্ধতি রয়েছে। কম্পাইলার কোন ফাংশন কল করতে জানে না। অতএব, একাধিক উত্তরাধিকার একটি সিস্টেমের জটিলতা বাড়ায়। একাধিক উত্তরাধিকার C++ ভাষায় সমর্থিত কিন্তু Java, C এর মতো ভাষা একাধিক উত্তরাধিকার সমর্থন করে না।পরিবর্তে, এই ভাষাগুলি এমন ইন্টারফেস ব্যবহার করে যা একটি ক্লাসের মতো কিন্তু তাৎক্ষণিকভাবে করা যায় না৷

মাল্টিলেভেল ইনহেরিটেন্স কি?

মাল্টিলেভেল ইনহেরিট্যান্স হল যখন একটি শ্রেণী একটি প্রাপ্ত বর্গ থেকে উত্তরাধিকার সূত্রে প্রাপ্ত সেই শ্রেণীটিকে একটি নতুন শ্রেণীর জন্য একটি বেস শ্রেণী তৈরি করে৷

একাধিক এবং বহুস্তরীয় উত্তরাধিকারের মধ্যে মূল পার্থক্য
একাধিক এবং বহুস্তরীয় উত্তরাধিকারের মধ্যে মূল পার্থক্য

চিত্র 02: মাল্টিলেভেল ইনহেরিটেন্স

মাল্টিলেভেল উত্তরাধিকারের তিনটি স্তর রয়েছে। মধ্যবর্তী শ্রেণী যেটি B শ্রেণী A থেকে এবং C শ্রেণী B শ্রেণী থেকে উত্তরাধিকারী হয়। A হল B এর জন্য বেস ক্লাস এবং B হল C এর জন্য বেস ক্লাস।

একটি প্রোগ্রাম যা মাল্টিলেভেল ইনহেরিটেন্স প্রয়োগ করে তা নিম্নরূপ। প্রোগ্রামটি জাভা ব্যবহার করে লেখা হয়েছে।

মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য_চিত্র 03
মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য_চিত্র 03

চিত্র 03: প্রোগ্রাম যা বহুস্তরীয় উত্তরাধিকার প্রয়োগ করে

উপরের প্রোগ্রাম অনুসারে, ক্লাস A হল B ক্লাসের বেস ক্লাস। ক্লাস B হল C ক্লাসের জন্য বেস ক্লাস। A ক্লাসের সমস্ত বৈশিষ্ট্য এবং পদ্ধতি B ক্লাসের দ্বারা অ্যাক্সেসযোগ্য। ক্লাসের সমস্ত বৈশিষ্ট্য এবং পদ্ধতি B শ্রেণী C দ্বারা অ্যাক্সেসযোগ্য। অতএব, C শ্রেণী A এবং B উভয়ের বৈশিষ্ট্য এবং পদ্ধতিগুলি অ্যাক্সেস করতে পারে। C টাইপের একটি বস্তু তৈরি করার সময়, তিনটি পদ্ধতিকে A (), B () এবং C () বলা সম্ভব। আউটপুট দেবে A, B, C.

মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে মিল কী?

উভয়টাই উত্তরাধিকারের প্রকার।

মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য কী?

মাল্টিপল ইনহেরিটেন্স বনাম মাল্টিলেভেল ইনহেরিটেন্স

মাল্টিপল ইনহেরিটেন্স হল একটি ইনহেরিটেন্সের ধরন যেখানে একটি ক্লাস একাধিক বেস ক্লাস থেকে উত্তরাধিকারসূত্রে পায়। মাল্টিলেভেল ইনহেরিট্যান্স হল একটি ইনহেরিটেন্স টাইপ যা একটি প্রাপ্ত বর্গ থেকে উত্তরাধিকারসূত্রে প্রাপ্ত হয়, যেটি প্রাপ্ত শ্রেণীটিকে একটি নতুন শ্রেণীর জন্য একটি বেস শ্রেণীতে পরিণত করে৷
ব্যবহার
একাধিক উত্তরাধিকার ব্যাপকভাবে ব্যবহৃত হয় না কারণ এটি সিস্টেমকে আরও জটিল করে তোলে। মাল্টিলেভেল ইনহেরিটেন্স ব্যাপকভাবে ব্যবহৃত হয়।
শ্রেণির স্তর
মাল্টিপল ইনহেরিট্যান্সের দুটি ক্লাস লেভেল আছে, বেস ক্লাস এবং ডিরাইভড ক্লাস। মাল্টিলেভেল ইনহেরিট্যান্সের তিনটি ক্লাস লেভেল আছে যথা, বেস ক্লাস, ইন্টারমিডিয়েট ক্লাস এবং ডিরাইভড ক্লাস।

সারাংশ – একাধিক বনাম মাল্টিলেভেল ইনহেরিটেন্স

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

PDF মাল্টিপল বনাম মাল্টিলেভেল ইনহেরিটেন্স ডাউনলোড করুন

আপনি এই নিবন্ধটির PDF সংস্করণ ডাউনলোড করতে পারেন এবং উদ্ধৃতি নোট অনুসারে অফলাইন উদ্দেশ্যে এটি ব্যবহার করতে পারেন। অনুগ্রহ করে এখানে পিডিএফ সংস্করণ ডাউনলোড করুন মাল্টিপল এবং মাল্টিলেভেল ইনহেরিটেন্সের মধ্যে পার্থক্য

প্রস্তাবিত: