कंस्ट्रक्टर में चीजों को डालने का एक अच्छा कारण, जैसा कि गिल्ली की टिप्पणी ने कहा था कि अंतिम क्षेत्रों का उपयोग है।
हालाँकि, यदि आप कंस्ट्रक्टर में चीजों को इनिशियलाइज़ करते हैं, तो ऑब्जेक्ट का जीवनकाल थोड़ा लंबा होगा, हालाँकि मैं इसके बारे में ज्यादा नहीं सोचता क्योंकि onCreate
इसके तुरंत बाद कहा जाएगा।
हालांकि यह मेरे आदर्श के खिलाफ है, मैं निर्माण सदस्यों को गतिविधि के सदस्यों के आरंभ के लिए टालता हूं onResume()
और onPause()
उन संसाधनों पर भरोसा करता हूं जो मेरे ऐप के साथ काम कर रहे हैं।
क्योंकि onCreate()
मैं आमतौर पर इसका उपयोग स्थानीय चर को मैपिंग देखने के लिए करता हूं। हालाँकि android-annotations पहले से ही मेरे लिए है, इसलिए मेरे पास onCreate()
अपनी गतिविधि के लिए शायद ही कोई तरीका है। मैं इसे अभी भी सेवा में उपयोग करता हूं।
हालाँकि, यदि आप सदस्यों को देखते हैं तो आप प्रारंभिक हो सकते हैं
उनके पास एक "करीब" विधि होगी जिसे आपको उचित समय पर चालू करना होगा (onResume या onPause)
वे उस दृश्य का हिस्सा होंगे जिसका अर्थ है कि इसे आरंभीकृत करने की आवश्यकता है फिर ऑनक्रीट को बुलाया जाना चाहिए
वे स्थिरांक हैं जिन्हें वैसे भी कंस्ट्रक्टर में डालने की आवश्यकता नहीं है, बस एक स्थिर फाइनल करेगा। इसमें पेंट और पथ स्थिरांक शामिल हैं जिन्हें एक स्थिर ब्लॉक द्वारा आरंभीकृत किया जा सकता है