জাভাতে গণনা (enum) হল একটি ডেটাটাইপ যা ধ্রুবক মানগুলির একটি সেট সংরক্ষণ করে। আপনি নির্দিষ্ট মান সংরক্ষণ করতে গণনা ব্যবহার করতে পারেন যেমন সপ্তাহে দিন, বছরে মাস ইত্যাদি।
আপনি −
হিসাবে গণনার নাম অনুসরণ করে enum কীওয়ার্ড ব্যবহার করে একটি গণনা সংজ্ঞায়িত করতে পারেনenum Days { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY }
অ্যারের মতোই, একটি গণনার উপাদান/ধ্রুবকগুলিকে চিহ্নিত করা হয় 0 থেকে শুরু হওয়া সংখ্যাগুলি ব্যবহার করে উপরের উদাহরণে দিনগুলি চিহ্নিত করা হয় সংখ্যাগুলি ব্যবহার করে যেমনটি নিম্নলিখিত চিত্রে দেখানো হয়েছে −
গণনাগুলি ক্লাসের অনুরূপ এবং, আপনি তাদের মধ্যে ভেরিয়েবল, পদ্ধতি এবং কনস্ট্রাক্টর থাকতে পারেন। একটি গণনায় শুধুমাত্র কংক্রিট পদ্ধতি অনুমোদিত।
একটি ক্লাস বাড়ানো
সমস্ত গণনা অভ্যন্তরীণভাবে Enum নামে একটি শ্রেণিকে প্রসারিত করে যা সমস্ত ভাষার গণনার প্রকারের বেস ক্লাস। যেহেতু জাভা একাধিক উত্তরাধিকার সমর্থন করে না আপনি যদি এটি করার চেষ্টা করেন তবে আপনি গণনা সহ অন্য ক্লাস প্রসারিত করতে পারবেন না, একটি কম্পাইল টাইম ত্রুটি তৈরি হবে৷
উদাহরণ
নিম্নলিখিত জাভা স্নিপেটে আমাদের নমুনা নামের একটি ক্লাস আছে এবং আমরা স্কুটার নামে একটি Enum টাইপ তৈরি করেছি এবং নমুনা ক্লাস প্রসারিত করার চেষ্টা করেছি।
import java.util.Scanner; class Sample { } enum Scooters extends Sample { }
আউটপুট
On executing, this class generates the following compile time error. D:\>javac EnumExample.java EnumExample.java:5: error: '{' expected enum Scooters extends Sample{ ^ EnumExample.java:5: error: ',', '}', or ';' expected enum Scooters extends Sample{ ^ 2 errorsপ্রসারিত করে