मैंने अभी प्रभावी जावा में पढ़ा है कि equals()
विधि का पांचवां सिद्धांत यह है कि सभी ऑब्जेक्ट null
के लिए असमान होना चाहिए। पुस्तक है कि कुछ प्रोग्रामर द्वारा लिखित कक्षाएं इस से बचाव में कहने के लिए null
के लिए एक स्पष्ट परीक्षण का उपयोग कर पर चला जाता है:गैर-शून्यता आवश्यकता या सिद्धांत
public boolean equals(Object o){
if (o == null)
return false;
...
}
प्रभावी जावा के अनुसार, ऊपर नहीं अशक्त परीक्षण अनावश्यक है। हालांकि, मेरा सवाल यह है कि, इस गैर-शून्यता आवश्यकता के लिए इतने सारे प्रोग्रामर परीक्षण क्यों करते हैं?
आप भरोसा नहीं कर सकते कि कोई भी कभी भी शून्य वस्तु में नहीं भेजेगा ... – vikingsteve