सब कुछ एक वस्तु में रूबी है? क्या इसमें Fixnum
एस शामिल है?सब कुछ एक वस्तु में रूबी है?
उत्तर
"सबकुछ" से आपका क्या मतलब है इस पर निर्भर करता है। Fixnum
एस हैं, जैसा कि अन्य ने दिखाया है। कक्षाएं भी Class
के उदाहरण के रूप में हैं। तरीके, ऑपरेटरों और ब्लॉक नहीं हैं, लेकिन वस्तुओं द्वारा लिपटे जा सकते हैं (Proc
)। सरल असाइनमेंट नहीं है, और नहीं कर सकता है। while
जैसे वक्तव्य भी नहीं हैं और नहीं कर सकते हैं। टिप्पणियां स्पष्ट रूप से बाद के समूह में भी आती हैं।
अधिकांश चीजें जो वास्तव में मायने रखती हैं, यानी आप चीजों में हेरफेर करना चाहते हैं, वस्तुएं हैं (या वस्तुओं में लपेटा जा सकता है)।
Yes everything is an object in ruby, और कहा कि Fixnum
हाँ भी शामिल है।
> pp Fixnum.ancestors
[Fixnum,
Integer,
Precision,
Numeric,
Comparable,
Object,
...
Kernel]
=> nil
हाँ:
> Fixnum.is_a?(Object) #=> true
विरासत की श्रृंखला देखने के लिए। Fixnum
एक कक्षा है, जो Integer
से प्राप्त होती है, जो Numeric
से प्राप्त होती है, जो अंत में Object
से प्राप्त होती है।
या, आप इसे क्यों नहीं पूछते? :)
1.is_a? Object # => true
1.class # => Fixnum
Fixnum.is_a? Object # => true
Ruby info और documentation पढ़ना वेबसाइट पर एक अच्छा विचार भी है।
रुबी के पास कोई प्राइमेटिव नहीं है (जैसे जावा में int, char आदि), इसलिए प्रत्येक मान (जो कुछ भी असाइनमेंट स्टेटमेंट के दाईं ओर बैठ सकता है) एक ऑब्जेक्ट है। हालांकि, नियंत्रण वाक्य, विधियों और भाषा वाक्यविन्यास की अन्य विशेषताएं नहीं हैं।
रूबी में व्यावहारिक रूप से सब कुछ नियंत्रण संरचनाओं के अपवाद के साथ एक वस्तु है। कवर के तहत चाहे या नहीं, कोड ब्लॉक या ऑपरेटर ऑब्जेक्ट है या नहीं, उन्हें ऑब्जेक्ट्स के रूप में दर्शाया गया है और इस तरह के बारे में सोचा जा सकता है।
उदाहरण के लिए एक कोड ब्लॉक लें:
def what_is(&block)
puts block.class
puts block.is_a? Object
end
> what_is {}
Proc
true
=> nil
या एक विधि के लिए:
class A
def i_am_method
"Call me sometime..."
end
end
> m = A.new.method(:i_am_method)
> m.class
Method
> m.is_a? Object
true
> m.call
"Call me sometime..."
और ऑपरेटरों (जैसे +, -, [], < <) तरीके के रूप में लागू किया जाता है:
class String
def +
"I'm just a method!"
end
end
लोगों के लिए पहली बार प्रोग्रामिंग में आने के लिए, इसका अर्थ एपी में क्या है सामरिक भावना यह है कि आप जिन नियमों को एक प्रकार के ऑब्जेक्ट पर लागू कर सकते हैं उन्हें दूसरों तक बढ़ाया जा सकता है। आप एक स्ट्रिंग, ऐरे, कक्षा, फ़ाइल या किसी भी कक्षा के बारे में सोच सकते हैं जिसे आप वैसे ही व्यवहार करते हुए परिभाषित करते हैं। यह उन कारणों में से एक है क्यों रूबी को चुनना आसान है और कुछ अन्य भाषाओं की तुलना में काम करना आसान है।
- 1. सब कुछ एक अभिव्यक्ति है
- 2. छपाई सब एक वस्तु
- 3. क्या सब कुछ अजगर की तरह अजगर में एक वस्तु है?
- 4. एक वस्तु जो रूबी
- 5. डब्ल्यूपीएफ में सब कुछ धुंधला क्यों है?
- 6. NSOpenPanel - सब कुछ बहिष्कृत?
- 7. सब कुछ अक्षम छोड़कर #
- 8. टाइपोफ नई स्ट्रिंग ("aaa") === "ऑब्जेक्ट"? सब कुछ एक वस्तु है, लेकिन प्राचीन प्रकार हैं?
- 9. सब कुछ neo4j
- 10. Git सब कुछ उपेक्षा लेकिन कुछ उपनिर्देशिका
- 11. केकफ़्प धूमकेतु सब कुछ ब्लॉक करता है
- 12. पायथन ढेर से सब कुछ बनाता है?
- 13. कम संकलक युगल सब कुछ
- 14. अपना खुद का 'सब कुछ एक फ़ाइल है' इंटरफ़ेस
- 15. एचटीएमएल कैनवास छाया सब कुछ
- 16. हेरोकू, पतला और सब कुछ
- 17. एसक्यूएल कहां कॉलम = सब कुछ
- 18. सब कुछ एक लुआ बाइटकोड खंड में रखते हुए?
- 19. पहले इससे पहले कि सब कुछ निकालें "," एक स्ट्रिंग में
- 20. डीडीडी: क्या सब कुछ या तो इकाई या मूल्य वस्तु में फिट होना चाहिए?
- 21. "इस बारे में सब कुछ बढ़ाना अर्थशास्त्र" क्या है?
- 22. कुछ 'शुद्ध' वस्तु-उन्मुख भाषाओं में से कुछ क्या हैं?
- 23. रूबी जब वस्तु
- 24. iCloud पर ऐप्पल का "सब कुछ या कुछ नहीं" रुख: क्या यह एक कठिन दिशानिर्देश है?
- 25. रूबी स्ट्रिंग सब बिना रेगेक्स बैक रेफरेंस
- 26. गिट सब कुछ खींच नहीं खींच रहा
- 27. इंटीजर शाब्दिक पायथन में एक वस्तु है?
- 28. जावा प्रॉक्सी सर्वर का उपयोग, सब कुछ
- 29. रिवाइटरूल एक फ़ोल्डर को छोड़कर सब कुछ पुनर्निर्देशित करें
- 30. HttpUtility.HtmlEncode सब कुछ एन्कोड नहीं करता
मुझे नहीं लगता कि रूबी में विधियों को वस्तुओं की तरह माना जा सकता है। –