প্রব্লেম / সমস্যা:
ধরুন আপনি একটি দোকান থেকে ফল কিনবেন যেখানে তিনটি দামের ফল রয়েছে , 1$, 2$ এবং 3$ দামের। যদি ফলের দোকানদার এমন একটি প্রসেস রাখত যেখানে একটি পাত্র রাখা থাকবে এবং কাস্টমাররা যেকোনো দামের কয়টি ফল কিনে তার টোটাল দাম পাত্রে রাখবে। সেক্ষেত্রে সমস্যা যেটা হত , অনেক কাস্টমার ফলের এক্সাক্ট দাম দিত না। ফলের দোকানদার কখনোই সেটা চাইবে না। এখন আমরা দেখব এনক্যাপসুলেশনের মাধ্যমে ফিল্ডে সরাসরি অ্যাক্সেস না করে কিভাবে এই সমস্যা সমাধান করা যায়। প্রোগ্রামিং এর মাধ্যমে তৈরি করতে পারি যেখানে আপনি ইচ্ছামত ফলের দাম দিতে পারবেন না এবং যে কয়টা ইচ্ছা নিতে পারবেন না। আপনাকে অবশ্যই 1$ টাকা দিয়ে 1$ টাকা দামের একটি ফল কিনতে পারবেন। আমরা এই এক্সাম্পল দিয়ে বোঝার চেষ্টা করব যে কিভাবে আমরা এখানে ডাটা হাইডিং, ডাটা ভ্যালিডেশন এবং ডাটা মোডিফিকেশন রেস্ট্রিক্ট করে দিতে পারি।