অধ্যায় ৫ঃ ইনহেরিটেন্স ও পলিমরফিজম

সংক্ষিপ্ত


১. Multilevel Inheritance Format বর্ণনা কর।

উত্তরঃ মাল্টিলেভেল ইনহেরিটেন্স প্রক্রিয়ায় ব্লকচিত্র এবং ফরম্যাট দেয়া হলো

সিনটেক্স (Syntax) ঃ

class A
    {
	|
	|
	|
	| 	// Class body
    }

class B extends A
   {
	|
	|
	|
	| 	// Class body
    }

class C extends B
 {
	|
	|
	|
	| 	// Class body
    }


২. Final Super keyword-এর ব্যবহার উল্লেখ কর।

উত্তরঃ

Final keyword : ফাইনাল (final) কীওয়ার্ড অনেকটা কন্সট্যান্ট ভেরিয়েবলের ন্যায় কাজ করে। অর্থাৎ final ভেরিয়েবলে একবার কোনো ডাটা সংরক্ষণ করা হলে এটি আর কখনো পরিবর্তন করা যায় না। যেহেতু final মেথডের ব পরিবর্তন হওয়ার কোনো সম্ভাবনা নেই। তাই কম্পাইলার মেথড কল এর স্থলে মেথড বডি বা ডেফিনিশন নিয়ে আসে। এতে প্রোগ্রামের দক্ষতা বহুলাংশে বৃদ্ধি পায়। কোনো একটি ক্লাসকে final করা হলে একে আর extend করা যায় না। জাভা ক্লাসে কোনো ভেরিয়েবলকে ফাইনাল হিসেবে ডিক্লারেশনের জন্য ডাটা টাইপের পূর্বে 'final' কীওয়ার্ড ব্যবহার করা হয়। ফাইনাল মেথডকে ডিক্লেয়ার করার নিয়ম হলো

final Return Type VariableName = Value;

Super keyword:

Super কীওয়ার্ড সুপার ক্লাসের অর্থাৎ Parent ক্লাসের অবজেক্টকে রেফার করে। এটি Super class মেথড এবং Super class কনস্ট্রাক্টর অ্যাক্সেস করতে ব্যবহৃত হয়।

Syntax :
Super. < method_name ();

Super class-এর ব্যবহার ঃ

  1. Super ভেরিয়েবল Parent ক্লাসের একটি ভেরিয়েবলের ভেরিয়েবলকে বুঝায়।

  2. Super() ফাংশন Parent class-এর কন্সট্রাক্টরকে আহবান করে।