যখন আপনি একটি ক্লাস ডিফাইন করেন, তখন আপনি একটি ডেটা টাইপের ব্লুপ্রিন্ট (blueprint) ডিফাইন করেন। অবজেক্টগুলো একটি ক্লাসের ইনস্ট্যান্স (instances)। একটি ক্লাসের মেথড এবং ভেরিয়েবলগুলোকে ক্লাসের মেম্বার (members) বলা হয়।
একটি ক্লাস ডেফিনিশন class কীওয়ার্ড দিয়ে শুরু হয়, তারপর ক্লাসের নাম; এবং কালি ব্রেস ({}) দিয়ে ক্লাস বডি বন্ধ থাকে। ক্লাস ডেফিনিশনের সাধারণ ফর্ম:
<access specifier> class class_name {
// member variables
<access specifier> <data type> variable1;
<access specifier> <data type> variable2;
...
<access specifier> <data type> variableN;
// member methods
<access specifier> <return type> method1(parameter_list) {
// method body
}
...
<access specifier> <return type> methodN(parameter_list) {
// method body
}
}
ক্লাস সম্পর্কে কিছু মূল পয়েন্ট:
- অ্যাক্সেস স্পেসিফায়ার (Access specifiers) মেম্বার এবং ক্লাসের জন্য অ্যাক্সেস রুল নির্দেশ করে। যদি উল্লেখ না করা হয়, তবে ক্লাস টাইপের ডিফল্ট অ্যাক্সেস স্পেসিফায়ার হলো
internal। মেম্বারগুলোর ডিফল্ট অ্যাক্সেস হলোprivate। - ডেটা টাইপ ভেরিয়েবলের টাইপ নির্দেশ করে, এবং রিটার্ন টাইপ মেথড যে ডেটা রিটার্ন করবে তার টাইপ নির্দেশ করে (যদি থাকে)।
- ক্লাস মেম্বার এক্সেস করতে আপনি ডট (.) অপারেটর ব্যবহার করেন।
- ডট অপারেটর একটি অবজেক্টের নামকে একটি মেম্বারের নামের সাথে লিঙ্ক করে।