मैं जावा दुनिया से आ रहा हूं और ब्रूस एकल्स के पायथन 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")
जावा में, हमें सार्वजनिक / निजी / संरक्षित चर के बारे में सिखाया गया है। वे कीवर्ड समझ में आते हैं क्योंकि कई बार आप एक ऐसी कक्षा में चर चाहते हैं, जिस पर कक्षा के बाहर कोई भी नहीं पहुँच पाता है।
अजगर में इसकी आवश्यकता क्यों नहीं है?