ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में गुण क्या हैं?
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग में, प्रॉपर्टी किसी ऑब्जेक्ट की एक विशेषता या गुण है जिसे एक्सेस और संशोधित किया जा सकता है। यह किसी ऑब्जेक्ट के भीतर डेटा को एनकैप्सुलेट करने और उस डेटा तक पहुंचने और संशोधित करने के लिए एक नियंत्रित इंटरफ़ेस प्रदान करने का एक तरीका है। उदाहरण के लिए, एक `कार` ऑब्जेक्ट में `रंग`, `मेक` और `मॉडल` जैसे गुण हो सकते हैं, जो वर्णन करते हैं कार की उपस्थिति और विशिष्टताएँ। `कार` ऑब्जेक्ट में `ड्राइव()` और `पार्क()` जैसे तरीके होंगे, जो कार की स्थिति में हेरफेर करेंगे (उदाहरण के लिए, इंजन शुरू करें, कार को गियर में डालें)।
गुणों को आम तौर पर गेटर्स और सेटर्स का उपयोग करके परिभाषित किया जाता है, ये वे विधियां हैं जो आपको संपत्ति के मूल्य तक पहुंचने और संशोधित करने की अनुमति देती हैं। उदाहरण के लिए:
```
क्लास कार {
निजी $रंग;
सार्वजनिक फ़ंक्शन __construct($रंग) {
$यह->रंग = $रंग;
}
सार्वजनिक फ़ंक्शन getColor() {
वापसी $यह->रंग ;
}
सार्वजनिक फ़ंक्शन सेट कलर ($ नया रंग) {
$ यह-> रंग = $ नया रंग;
}
सार्वजनिक फ़ंक्शन ड्राइव() {
// इंजन शुरू करने और कार को गियर में डालने के लिए कोड
}
सार्वजनिक फ़ंक्शन पार्क () {
// इंजन को बंद करने और कार को पार्क करने के लिए कोड
}
}
```
इस उदाहरण में, `कार` ऑब्जेक्ट में `रंग` नामक एक संपत्ति है, जो निजी है (यानी, यह केवल कर सकती है ऑब्जेक्ट द्वारा ही एक्सेस और संशोधित किया जा सकता है)। `GetColor()` विधि आपको `color` प्रॉपर्टी का वर्तमान मान पुनर्प्राप्त करने की अनुमति देती है, जबकि `setColor()` विधि आपको `color` प्रॉपर्टी के लिए एक नया मान सेट करने की अनुमति देती है।
Properties ऑब्जेक्ट में एक मौलिक अवधारणा है -ओरिएंटेड प्रोग्रामिंग, और वे किसी ऑब्जेक्ट के भीतर डेटा को एनकैप्सुलेट करने और उस डेटा तक पहुंच को नियंत्रित करने का एक तरीका प्रदान करते हैं।