Avatar ·

Kotlin में package-private एक्सेस मॉडिफायर का एनालॉग

सभी को नमस्ते! मैं हाल ही में Java से Kotlin पर आया हूँ और एक समस्या का सामना कर रहा हूँ। Java में, मैं अक्सर package-private एक्सेस मॉडिफायर (डिफ़ॉल्ट, जब public/private/protected निर्दिष्ट नहीं करते) का उपयोग करता था ताकि एक ही पैकेज के अंदर क्लास एक-दूसरे के methods और fields तक पहुँच सकें, लेकिन ये members बाहरी दुनिया से छिपे रहें। यह मॉड्यूल की आंतरिक लॉजिक को व्यवस्थित करने के लिए बहुत सुविधाजनक था।\n\nKotlin में ऐसा कोई मॉडिफायर नहीं है। `internal` है, जो मॉड्यूल स्तर पर काम करता है (सभी फ़ाइलें जो एक साथ कंपाइल की गई हैं), लेकिन यह मेरे कार्यों के लिए बहुत व्यापक विज़िबिलिटी है। मुझे विज़िबिलिटी को सिर्फ एक पैकेज (या Kotlin शब्दों में, एक डायरेक्टरी/फ़ोल्डर सोर्स कोड के साथ) तक सीमित करने की आवश्यकता है।\n\nयहाँ Java का एक उदाहरण है जिसे मैं Kotlin में ट्रांसफर करना चाहता हूँ:\n\n```java\n// फ़ाइल: com/example/da