একটি ক্লাস মেথড তার প্রথম আর্গুমেন্ট হিসেবে ক্লাসটিকে নেয়। এর ফলে ক্লাস থেকে অবজেক্ট তৈরি না করেই মেথড কল করা যায়। মেথড ডিক্লেয়ারেশনের আগে @classmethod ডেকোরেটর ব্যবহার করতে হয়।
প্রধান বৈশিষ্ট্য
- ক্লাসমেথড ক্লাসের সাথে বাউন্ড থাকে, ইনস্ট্যান্সিয়েশনের উপর নির্ভরশীল নয়।
- ক্লাসমেথড ক্লাস মডিফাই করতে পারে, যা সব ইনস্ট্যান্সে প্রপাগেট হয়।
classmethod ব্যবহার
class WeekDay:
day_name = ['Mon','Tue','Wed','Thu','Fri']
@classmethod
def daynames(n):
print('The WeekDays are', n.day_name)
WeekDay.daynames() # ক্লাস দিয়ে কল
WeekDay().daynames() # ইনস্ট্যান্স দিয়ে কল
আউটপুট
The WeekDays are ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'] The WeekDays are ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
classmethod ছাড়া
def daynames():
day_name = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
print('The WeekDays are', day_name)
daynames()
আউটপুট
The WeekDays are ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']