मैं एक एंड्रॉइड प्रोजेक्ट को दोबारा कर रहा हूं जो बड़े हो रहा है। रनिंग लिंट मुझे जेएसएमई अंकबाहरी और आंतरिक कक्षाओं के बीच निजी सदस्य पहुंच देता है। निम्न उदाहरणनिजी आंतरिक कक्षा का भी निर्माता निजी है?
public class Outer {
private Inner mInner = new Inner();
private class Inner {}
}
ध्यान में रखते हुए मैं जानकारी
Name
private field Inner mInner
Location
class Outer (default package)
Problem synopsis
Access to private member of class 'Inner' at line 2
Problem resolution
Make 'Inner' constructor package-local
समस्या संकल्प को लागू करने पाने के पल में
public class Outer {
private Inner mInner = new Inner();
private class Inner {
Inner() {}
}
}
के स्रोत मैं एक छोटे से उलझन में हूँ बदल जाता है। अब तक मैंने सोचा था कि उदाहरण के लिए
public class Outer {
private Inner mInner = new Inner();
private class Inner {
public Inner() {}
}
}
Am मैं इस मामले में गलत बराबर होगा या यह फाहा का एक मुद्दा है?
संभावित डुप्लिकेट [क्या हमें सार्वजनिक कन्स्ट्रक्टर घोषित करना चाहिए जब कक्षा को पैकेज के रूप में घोषित किया जाता है?] (Http://stackoverflow.com/questions/243218/should-we-declare-a-public-constructor-when- द क्लास-घोषित-ए-पैकेज-प्राइ) –
जब भी आप कक्षा को निजी घोषित करते हैं, उस वर्ग से संबंधित सबकुछ निजी हो जाता है – awsome
@ क्रिकेट_007 दुख की बात नहीं। इसमें भाग लिंट के बारे में शिकायत नहीं है। – tynn