इससे पहले कि हम देखें कि स्टैटिक वेरिएबल का उपयोग कहाँ और कैसे किया जाता है, आइए पहले यह समझें कि स्विफ्ट में स्टैटिक वेरिएबल क्या है?
स्थिर चर
स्टेटिक वेरिएबल्स वे वेरिएबल्स हैं जिनके मान किसी वर्ग के सभी इंस्टेंस या ऑब्जेक्ट के बीच साझा किए जाते हैं। जब हम किसी वेरिएबल को स्टैटिक के रूप में परिभाषित करते हैं, तो वह किसी ऑब्जेक्ट के बजाय एक क्लास से जुड़ जाता है। कक्षा लोडिंग समय के दौरान स्थिर चर के लिए स्मृति आवंटन किया जाएगा।
आइए हम उपरोक्त आकृति को समझते हैं, हमारे पास एक वर्ग नमूना है और इसमें दो ऑब्जेक्ट s1 और s2 हैं। आप देखते हैं कि s1 और s2 दोनों का अपना चर "a" अलग-अलग है, लेकिन उनका साझा साझा चर "b" है। यह "बी" स्थिर चर है।
अब देखते हैं कि हमें स्टैटिक वेरिएबल्स का उपयोग कहाँ और कैसे करना चाहिए।
आप अपने वैरिएबल डिक्लेरेशन के सामने स्टैटिक कीवर्ड जोड़कर स्टैटिक वेरिएबल बनाते हैं।
static let/var variable name: type(optional) = value static let num1: Int = 1 static var name1 = “Akash”
हम और अधिक एक्सप्लोर करने के लिए खेल के मैदान का उपयोग करेंगे।
Xcode → फ़ाइल → खेल का मैदान खोलें और इसे "स्थैतिक चर" नाम दें
जब हम किसी भी वेरिएबल को let के रूप में परिभाषित करते हैं, तो इसका मतलब है कि इसके मानों को संशोधित नहीं किया जा सकता है, दूसरी ओर यदि हम किसी भी वेरिएबल को var के रूप में परिभाषित करते हैं तो इसका मतलब है कि इसके मानों को संशोधित किया जा सकता है।
class Student { static let section: String = "A" // static constat static var day: String = "Monday" // static variable var name: String = "Akash" // instance variable var rollNum: Int = 1 // instance variable } let student1 = Student() // Object 1 print(student1.name) // Akash print(student1.rollNum ) // 1 student1.name = "Aman" // Setting ob1 value to Aman print(student1.name) // Aman let student2 = Student() // Object 2 print(student2.name) // Akash print(Student.section) // A print(Student.day) // Monday