सामान्य वस्तुओं पर, मैं क्या कर सकते हैं निम्नलिखित:पैकेज ऑब्जेक्ट्स पर शॉर्टेंड फॉर्म में क्यों लागू नहीं किया जा सकता है?
object A {
def apply = "!"
}
A() // "!"
लेकिन पैकेज वस्तुओं पर, यह काम नहीं करता:
package object A {
def apply = "?"
}
A.apply // "?"
A() // compile error
// error: package A is not a value
वहाँ कुछ बुनियादी सीमा है? या यह सिर्फ एक कार्यान्वयन सीमा है, जिसे मैं संकलक को थोड़ा सा बदलकर ठीक कर सकता हूं?
आप इसके साथ क्या करना चाहते थे? क्यों न केवल सामान्य वस्तुओं का उपयोग करें? –
@ सेर्गेई पैसिचेंको - उदाहरण के लिए, कोडबेस में आयात किए बिना कुछ विधि कॉल करने के लिए - यदि आपके पास "लागू" विधि के साथ पैकेज ऑब्जेक्ट "बंदर" है, तो आप किसी भी स्थान पर "बंदर()" कर पाएंगे। यह एक उदाहरण है - लेकिन मुझे भी रूचि है कि क्यों पैकेज ऑब्जेक्ट सामान्य वस्तुओं से अलग हैं। – Rogach