नहीं बुलाया जाना चाहिए लागू करने के लिए सबसे अच्छा अभ्यास मैं एक जावा वर्ग एक है जो एक विधि fooएक व्युत्पन्न विधि है कि
abstract class A {
abstract void foo();
}
मैं भी की एक व्युत्पन्न वर्ग है है है। MutableA एक सिंगलटन ऑब्जेक्ट है जो इंगित करता है कि कोई अपडेट आवश्यक नहीं है जो कोड प्रवाह का पुन: उपयोग करने के लिए उपयोगी है। foo() को MutableA पर कभी नहीं बुलाया जाना चाहिए।
- फेंक असमर्थित अपवाद
- कुछ भी नहीं (खाली कार्यान्वयन)
- यह एक बुरा डिजाइन क्या इतना कभी है कार्य करें: सबसे अच्छा तरीका है कि प्राप्त करने के लिए क्या है।
क्या कोई मुझे सलाह दे सकता है कि इस मामले में सबसे अच्छा अभ्यास क्या है?
यह वास्तव में 'foo' क्या करना चाहिए के विनिर्देशों पर निर्भर करता है। इनमें से कोई भी विकल्प लागू हो सकता है। – chrylis
आप ऐसा करने पर विचार कर सकते हैं कि अमरूद 'अपरिवर्तनीय * कक्षाएं क्या करती हैं, जो इस तरह के तरीकों को चिह्नित करने के लिए है '@ अस्वीकृत'। यह आपको कॉल करने से नहीं रोकता है, लेकिन कम से कम आपका आईडीई (यदि आप एक का उपयोग करते हैं) तो आपको यह संकेत मिल सकता है कि कुछ बढ़ रहा है, बशर्ते कि आपके पास विशेष रूप से 'MutableA'' का संदर्भ हो। –
यदि आप Google के गुवा से प्रेरणा आकर्षित करना चाहते हैं, तो वे एक अप्रत्याशित संरचना पर एक उत्परिवर्तन संग्रह विधि को कॉल करते हुए 'असमर्थित ऑपरेशन अपवाद' फेंक देते हैं। वे विधि को '@ अस्वीकृत' के रूप में भी चिह्नित करते हैं। –