2013-02-01 16 views
5

के अर्थ की तलाश में स्मॉलटॉक में "वर्कस्पेस" वातावरण मौजूद है। परिभाषा के अनुसार, "स्वयं" उस ऑब्जेक्ट को इंगित करता है जिसमें वर्तमान विधि निष्पादित हो रही है। लेकिन जब मैं वर्कस्पेस विंडो के अंदर कोड स्निपेट टाइप करता हूं तो मैं "वर्तमान विधि" को कैसे समझूं? कोई भी मौजूदा वस्तु कोई विधि नहीं चल रही है या मुझे कुछ याद आया। कोई भी मदद कर सकता है?"स्वयं"

+0

यदि मैं वर्कस्पेस विंडो में कुछ टेक्स्ट टाइप करता हूं और इसे चुनता हूं, तो मुझे लगता है कि फारो इसे कोड के ब्लॉक में रखता है। जब मैं "प्रिंट-इट" पर क्लिक करता हूं तो यह इस स्निपेट पर "मान" संदेश भेजता है। अब "स्वयं" कोड-ब्लॉक में है और हमारे पास कोई सुराग नहीं है जिसमें ब्लॉक किस ऑब्जेक्ट को निष्पादित किया जाएगा। – Sharphawk

उत्तर

8

आप जो कोड निष्पादित करते हैं उसे डीबग कर सकते हैं और आप देखेंगे कि आप किसी ऑब्जेक्ट पर एक अस्थायी विधि निष्पादित करते हैं। उदाहरण के लिए फारो में वर्कस्पेस DoIts UndefinedObject (nil) पर एक विधि बनाते हैं। तो यहां स्वयं शून्य देखेंगे।

4

इस प्रयोग को आजमाएं: कार्यक्षेत्र में 'स्वयं' टाइप करें, इसे चुनें, और संदर्भ मेनू से "इसे प्रिंट करें" का चयन करें। यह आपको दिखाएगा कि किस वस्तु से जुड़ा हुआ है।

अधिकांश स्मॉलटाक में, स्वयं शून्य होगा।

संबंधित मुद्दे