मेरे पास एक दोस्त है जो जावा में उम्र बढ़ने के बाद .NET विकास में शामिल हो रहा है और उसके कुछ कोड देखने के बाद मुझे लगता है कि वह अक्सर निम्नलिखित कर रहा है:शैली में एक अंतर: IDictionary बनाम शब्दकोश
IDictionary<string, MyClass> dictionary = new Dictionary<string, MyClass>();
वह कक्षा के बजाए इंटरफ़ेस के रूप में शब्दकोश घोषित कर रहा है। आमतौर पर मैं निम्नलिखित करना होगा:
Dictionary<string, MyClass> dictionary = new Dictionary<string, MyClass>();
मैं केवल IDictionary इंटरफ़ेस का उपयोग होता है, जब यह आवश्यक है (जैसे कि, उदाहरण के लिए एक विधि है कि एक IDictionary इंटरफ़ेस स्वीकार करता है करने के लिए शब्दकोश पारित करने के लिए)।
मेरा प्रश्न है: क्या चीजों को करने के अपने तरीके के लिए कोई योग्यता है? जावा में यह एक आम प्रथा है?
स्थानीय चर के लिए वास्तव में कोई बिंदु नहीं है। – Joren
डुपे: http://stackoverflow.com/questions/1484445/why-are-variables-declared-with-their-interface-name-in-java –
एक अच्छा अभ्यास ** लेकिन ** प्रदर्शन लागत से सावधान रहें: http : //www.nimaara.com/2016/03/06/beware-of-the-idictionary-tkey-tvalue/ – MaYaN