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