रूबी में क्लास क्या है?
ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) में कक्षाएं बुनियादी बिल्डिंग ब्लॉक हैं और वे ऑब्जेक्ट बनाने के लिए एक ब्लूप्रिंट को परिभाषित करने में आपकी मदद करती हैं।
वस्तुएं कक्षा के उत्पाद हैं ।
तो वस्तु क्या है?
एक वस्तु एक व्यक्तिगत "वस्तु" होती है, जिसकी अपनी पहचान और अपना डेटा होता है।
उदाहरण के लिए :
एक Book कक्षा किताबें बनाने का खाका हो सकता है।
यह वर्ग परिभाषित करता है कि सभी पुस्तकों में कौन से गुण समान हैं, जैसे:
- एक शीर्षक
- एक लेखक
- पृष्ठ
- आदि.
प्रत्येक व्यक्तिगत पुस्तक एक वस्तु है और आप Book . की बदौलत इसके जैसी कई वस्तुएं बना सकते हैं कक्षा। यह कक्षाएं बनाने की बात है, वे आपके रूबी एप्लिकेशन के लिए पुन:प्रयोज्य ब्लूप्रिंट हैं।
अब :
आप अपनी खुद की कक्षाएं लिखना सीखेंगे ताकि आप आज ही ओओपी कोड लिखना शुरू कर सकें।
रूबी क्लास कैसे बनाएं
क्लास बनाने का सिंटैक्स इस प्रकार है:
class Orange end
ध्यान दें कि :
- कक्षा के नाम बड़े अक्षर से शुरू होते हैं
- हम
classका उपयोग करते हैं कीवर्ड, फिरendकीवर्ड - एक खाली वर्ग बहुत उपयोगी नहीं है, लेकिन फिर भी आप इससे ऑब्जेक्ट बना सकते हैं
क्लास बनाने के और भी तरीके हैं (जैसे Class.new ), लेकिन ये विधियां केवल विशेष परिस्थितियों में ही उपयोगी होती हैं।
एक वर्ग, अनेक वस्तुएं
एक वर्ग का मुख्य उपयोग विधियों, आवृत्ति चर और स्थिरांक का एक कंटेनर होना है, जिससे एक खाका तैयार होता है जिससे आप ऑब्जेक्ट बना सकते हैं।
आप new . का उपयोग करके ऑब्जेक्ट बना सकते हैं विधि।
इसे पसंद करें :
Orange.new
हम एक वस्तु को "तत्काल" के रूप में बनाने की प्रक्रिया को जानते हैं, और हम कहते हैं कि एक वस्तु एक वर्ग का "उदाहरण" है।
ऑब्जेक्ट क्यों बनाते हैं?
क्योंकि आपके द्वारा बनाई गई प्रत्येक वस्तु भिन्न और अद्वितीय है ।
हर वस्तु की अपनी पहचान होती है।
उदाहरण के लिए :
Orange . के साथ कक्षा, हर orange आपके द्वारा बनाई गई वस्तु का अपना वजन, मूल देश, गुणवत्ता आदि होता है।
Ruby Classes को और अधिक उपयोगी बनाना
जब आप इंस्टेंस मेथड्स और इंस्टेंस वेरिएबल को जोड़ना शुरू करते हैं तो क्लास अधिक उपयोगी हो जाती हैं।
एक विधि एक ऐसी चीज़ है जो आपकी कक्षा कर सकती है।
उदाहरण के लिए :
जूस पाने के लिए आप संतरे को निचोड़ सकते हैं।
यहां एक कोड उदाहरण दिया गया है :
class Orange
def squeeze
puts "Here's your juice!"
end
end
orange = Orange.new
orange.squeeze
ये तरीके आपके ऑब्जेक्ट के लिए कमांड बन जाते हैं!
हर orange आपके द्वारा बनाई गई वस्तु के पास इस squeeze तक पहुंच होगी विधि और यह कक्षाओं का उपयोग करने के लाभों में से एक है।
एक आवृत्ति चर क्या आपकी कक्षा कुछ जानती है ।
उदाहरण:
class Orange
def initialize
@juice_available = 100
end
def squeeze
@juice_available -= 50
end
end
इंस्टेंस वैरिएबल स्थानीय वैरिएबल से अलग होते हैं क्योंकि वे @ . से शुरू होते हैं चिन्ह, प्रतीक। जब तक आप attr_accessor परिभाषित नहीं करते, तब तक आप उन्हें कक्षा के बाहर एक्सेस नहीं कर सकते।
यह कौन सी कक्षा है?
रूबी में वस्तुओं के साथ काम करते समय यह जानना उपयोगी होता है कि वस्तु किस वर्ग से बनी है।
आप ऐसा इस तरह कर सकते हैं :
"".class # String [].class # Array orange.class # Orange (assuming orange = Orange.new)
यह क्यों उपयोगी है?
तरीके छोटे इंजन हैं जो रूबी में चीजें करते हैं।
यदि आप कक्षा को जानते हैं तो आप पता लगा सकते हैं कि कौन-सी विधियाँ उपलब्ध हैं (Google का उपयोग करें, ri , या pry ), दूसरे शब्दों में, आप खोज सकते हैं कि वस्तु आपके लिए क्या कर सकती है!
कक्षाओं के बारे में अधिक सीखना
जब कक्षाओं की बात आती है तो यह केवल "हिमशैल का सिरा" होता है।
अगर आप और जानना चाहते हैं…
इन्हें पढ़ें :
- रूबी इनिशियलाइज़ मेथड
- Attr_accessor, attr_reader, attr_writer
- ओओपी में विरासत
- ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग
बीटीडब्ल्यू कक्षाएं स्वयं भी वस्तुएं हैं, कम से कम रूबी में 🙂
सारांश
आपने रूबी में कक्षाओं के बारे में सीखा, उन्हें कैसे बनाया जाए और वे क्यों उपयोगी हैं!
इस लेख को शेयर करना न भूलें ताकि अधिक से अधिक लोग इसका आनंद उठा सकें।
पढ़ने के लिए धन्यवाद।