2015-11-15 9 views
12

से आयात पर मांग नहीं कर सकता मैं एक लाइब्रेरी बनाने की कोशिश कर रहा हूं जहां आप "स्थिर आयात" (कोटलिन में आयात-मांग) के माध्यम से object के कार्यों को कॉल कर सकते हैं। दुर्भाग्यवश कोटलिन की तरह एक सीमा है जैसा कि नीचे देखा गया है।कोटलिन: ऑब्जेक्ट

enter image description here

क्यों यह एक सीमा है? क्या ऐसा कुछ भी है जो मैं इसके आसपास पाने के लिए कर सकता हूं? (मैंने एक साथी ऑब्जेक्ट के साथ कक्षा का उपयोग करने की कोशिश की है और उस स्थिति में फ़ंक्शन भी हल नहीं करते हैं।)

उत्तर

6

स्पार्कॉट आपकी कोटलिन कक्षा है, अगर मैं समझता हूं कि यह सही है। ऑब्जेक्ट्स supertypes से चीजों का उत्तराधिकारी हो सकता है, उदा। equals(), hashCode() प्रत्येक बार * किसी ऑब्जेक्ट से आयात किया जाएगा, और निर्णय लिया गया था कि यह बहुत भ्रमित होगा।

* - आयात केवल जावा ऑब्जेक्ट के साथ काम करता है।

+0

'स्पार्कोट' एक कोटलिन ऑब्जेक्ट है, जो सिंगलटन क्लास है। – Jire

+2

खैर, कोटलिन नाम से वस्तुओं के केवल व्यक्तिगत सदस्यों को आयात करने का समर्थन करता है, न कि * -पोर्ट। आईडीई इसके साथ मदद करता है। –

+1

कम से कम इस निर्णय के पीछे सोच को सुनना सहायक होता है, लेकिन यह सीमा अब मैंने कोटलिन रूपांतरण को जावा पर वापस करने का निर्णय लिया है। कोटलिन को ऐसी भाषा के रूप में प्रस्तुत किया जाता है जो इंटेलिजे के लिए भाषा प्लगइन बनाने में मदद करेगा - और यह करता है - लेकिन यह एक ऐसा स्थान है जहां यह निश्चित रूप से नहीं करता है। आईलेमेंट टाइप टाइप धारक का उपयोग करने वाले किसी भी व्यक्ति के बारे में उन सभी स्थानों पर आयात करना चाहते हैं जो भारी मात्रा में इसका उपयोग करते हैं और जिसके लिए कोई संघर्ष नहीं होता है (यदि वे कार्पल सुरंग दर्द के बिना रहना चाहते हैं)। ... – naki