আমি জাভা বিশ্ব থেকে আসছি এবং ব্রুস একেলস এর পাইথন 3 প্যাটার্নস, রেসিপি এবং আইডিয়ামস পড়ছি ।
ক্লাসগুলি সম্পর্কে পড়ার সময়, এটি বলে যায় যে পাইথনগুলিতে উদাহরণ ভেরিয়েবলগুলি ঘোষণা করার দরকার নেই। আপনি কেবল এগুলি কনস্ট্রাক্টারে ব্যবহার করুন, এবং বুম করুন, তারা সেখানে রয়েছে।
উদাহরণস্বরূপ:
class Simple:
def __init__(self, s):
print("inside the simple constructor")
self.s = s
def show(self):
print(self.s)
def showMsg(self, msg):
print(msg + ':', self.show())
যদি এটি সত্য হয় তবে শ্রেণীর যে কোনও অবজেক্ট ক্লাসের বাইরে Simple
ভেরিয়েবলের মান পরিবর্তন করতে পারে s
।
উদাহরণ স্বরূপ:
if __name__ == "__main__":
x = Simple("constructor argument")
x.s = "test15" # this changes the value
x.show()
x.showMsg("A message")
জাভাতে, আমরা সরকারী / ব্যক্তিগত / সুরক্ষিত ভেরিয়েবল সম্পর্কে শিখিয়েছি। এই কীওয়ার্ডগুলি বোধগম্য হয় কারণ সময়ে সময়ে আপনি এমন শ্রেণিতে ভেরিয়েবল চান যেখানে ক্লাসের বাইরে কারও অ্যাক্সেস থাকে না।
পাইথনে কেন এটি প্রয়োজন হয় না?