दिलचस्प पोस्ट
'…' का कारण आंतरिक या बाहरी कमांड, ऑपरेटिव प्रोग्राम या बैच फ़ाइल के रूप में क्यों नहीं माना जाता है? टर्मिनल / कमांडलाइन से टेस्ट वसंत तक के लिए कर्ल के साथ JSON डेटा कैसे पोस्ट करें? dyld: पुस्तकालय लोड नहीं किया गया: @ rpath / libswiftCore.dylib अद्वितीय मूल्यों के साथ क्रमांतर Layout_gravity प्रोग्राम को कैसे सेट करें? नवीनतम गैर-एनए मूल्य के साथ एनएएस की जगह ओरेकल SQL में तिथियों की तुलना करना Singletons वास्तव में है कि बुरा कर रहे हैं? फिक्स्ड-आकार फ्लोटिंग पॉइंट प्रकार जावास्क्रिप्ट में वैश्विक वस्तु कैसे प्राप्त करें? एक बुफ़र्ड इमेज पर ओवरले टेक्स्ट के लिए ग्राफिक्स 2 डी का उपयोग करना और एक बफर्ड इमेज वापस करना सी # लम्बाडा (=>) एक सरणी से बेतरतीब ढंग से एक तत्व कैसे चुनें सी स्ट्रिंग – समता के लिए दो स्ट्रिंग्स की तुलना करने के लिए समानता ऑपरेटर == का उपयोग करना एंड्रॉइड में एसएमएस और एमएमएस भेजने और प्राप्त करना (प्री किट कैट एंड्रॉइड 4.4)

क्या जावा के डिफॉल्ट पैकेज का एक बुरा अभ्यास है?

क्या जावा के डिफॉल्ट पैकेज का एक बुरा अभ्यास है?

वेब के समाधान से एकत्रित समाधान "क्या जावा के डिफॉल्ट पैकेज का एक बुरा अभ्यास है?"

हाँ यही है। आदर्श रूप से, कॉलम नामकरण से बचने के लिए, पैकेज के नाम विश्व स्तर पर अद्वितीय होने चाहिए। डिफ़ॉल्ट पैकेज का उपयोग इस सम्मेलन को तोड़ता है डिफ़ॉल्ट पैकेज से एक वर्ग को आयात करना भी असंभव है

अनाम पैकेज हर जगह मौजूद क्यों नहीं है, अगर ऐसा बुरा विचार है? जेएलएस §7.4.2 से :

अज्ञात पैकेज जावा प्लेटफॉर्म द्वारा मुख्य रूप से सुविधा के लिए उपलब्ध कराए जाते हैं जब छोटे या अस्थायी अनुप्रयोग विकसित होते हैं या जब विकास शुरू होता है।

कई विभिन्न स्तरों पर समस्याएं हैं:

  • आप कक्षाओं को उन वर्गों से डिफॉल्ट पैकेज में आयात नहीं कर सकते जो कि नहीं हैं
  • यदि आप एकाधिक कलाकृतियों में डिफ़ॉल्ट पैकेज को हल करने का प्रयास करते हैं, तो आपको क्लास लोडिंग समस्याएं मिलेंगी
  • आप सामान्य रूप से आपके जैसे डिफ़ॉल्ट और संरक्षित दायरे का उपयोग नहीं कर सकते
  • आपके कोड और अन्य कोड के बीच कोई स्पष्ट अंतर नहीं है

हाँ यही है। जैसा कि अन्य उत्तर में बताया गया है, आप डिफ़ॉल्ट पैकेज से कक्षाएं लोड नहीं कर सकते।

SO उत्तर देखें:

कैसे डिफ़ॉल्ट पैकेज से एक वर्ग को आयात करें
डिफ़ॉल्ट-पैकेज में जावा-कक्षाओं को कैसे एक्सेस करना है?

हालांकि, log4j के लिए आवश्यक है कि विन्यास डिफ़ॉल्ट पैकेज में स्थित हो। यह एकमात्र ऐसी चीज है जो वहां रखना उचित है।

संपादित करें: जैसा कि शॉन पैट्रिक फ्लोयड और माइकल ने टिप्पणियों में बताया है, आप किसी भी कॉन्फ़िगरेशन फ़ाइलों को डिफ़ॉल्ट पैकेज में डाल सकते हैं। आप दोनों को इस बात का ध्यान देने के लिए धन्यवाद।

हाँ यही है। समस्या यह है कि डिफ़ॉल्ट पैकेज से क्लाइंट आयात करना संभव नहीं है।