मैं हमेशा सार्वजनिक कार्यों के तर्कों की जांच करता हूं और कुछ गलत होने पर अपवाद फेंक देता हूं। (निजी सहायकों के लिए मैं दावे का उपयोग करता हूं)।स्वचालित अवैध अवैध अभिव्यक्ति संदेश?
इस तरह:
if(a < 0 || a >= b)
throw new IllegalArgumentException("'a' must be greater or equal to 0 and
smaller than b ");
लेकिन यह हमेशा मुझे गुस्सा दिलाती है ये त्रुटि संदेश लिखने के लिए। संदेश, मेरे लिए बेमानी लगता है के रूप में संदेश सिर्फ बयान
a < 0 || a >= b
का निषेध है।
यह अक्सर होता है कि मैं परिवर्तनीय का नाम बदलकर (ग्रहण में) करता हूं और फिर संदेश परिवर्तनों को प्रतिबिंबित नहीं करता है। या मैं शर्तों को बदलता हूं और संदेशों को बदलना भूल जाता हूं।
यह बहुत अच्छा है कि अगर मैं कुछ ऐसा लिख सकता होगा:
assertArgument(a >= 0 && a < b);
इस तरह
"violated argument assertion: a >= 0 && a < b."
एक संदेश के साथ एक IllegalArgumentException उठाना चाहिए सी में आप सी में वास्तव में एक मैक्रो लिख सकता है (जोर सिर्फ एक मैक्रो है)। क्या जावा में ऐसा कुछ करने का कोई आसान तरीका है?
धन्यवाद!
आप निर्माण के दौरान जावा कोड उत्पन्न कर सकता है ... लेकिन दर्द इसके लायक नहीं है। आपकी समस्या घातक नहीं है - जब तक आप एक लाइन आईडी कर सकते हैं, तो आप ठीक रहेगा। कोड के माध्यम से जाने और असंगतताओं की जांच करने के लिए आप पाइथन लिपि भी लिख सकते हैं। –
एक सहायक फ़ंक्शन 'चेकपैम (पैरा, पैरानामनाम' बनाने के बारे में कैसे? फिर, जब आप चर का नाम बदलते हैं, तब भी आप चेकपैम के सभी उदाहरणों को देखने के लिए एक त्वरित पायथन स्क्रिप्ट को जोड़ सकते हैं, और सुनिश्चित कर सकते हैं कि वे कोशेर हैं। शायद इस विचार पर कोई और विस्तार कर सकता है। –
आप डीबग मोड में प्रतिबिंब का भी उपयोग कर सकते हैं। –