प्रभावी जावा से, दूसरा संस्करण।
पिछले नियम का एकमात्र अपवाद "निरंतर क्षेत्र" की चिंता है, जिनके नाम में अंडरस्कोर वर्ण द्वारा अलग किए गए एक या अधिक अपरकेस शब्द शामिल होने चाहिए, उदाहरण के लिए, VALUES या NEGATIVE_INFINITY। एक स्थिर फ़ील्ड एक स्थिर अंतिम फ़ील्ड है जिसका मान अपरिवर्तनीय है । यदि एक स्थिर अंतिम क्षेत्र में एक आदिम प्रकार या एक अपरिवर्तनीय संदर्भ प्रकार (आइटम 15) है, तो यह एक स्थिर क्षेत्र है। उदाहरण के लिए, एनम स्थिरांक निरंतर क्षेत्र हैं। यदि किसी स्थिर अंतिम फ़ील्ड में एक परिवर्तनशील संदर्भ प्रकार होता है, तो यह अभी भी एक स्थिर फ़ील्ड हो सकता है यदि संदर्भित ऑब्जेक्ट अपरिवर्तनीय है।
सारांश में, स्थिर == स्थिर अंतिम, प्लस यदि यह एक संदर्भ (बनाम एक साधारण प्रकार) है, तो अपरिवर्तनीयता।
Slf4j लकड़हारे को देखते हुए,
http://www.slf4j.org/api/org/slf4j/Logger.html
यह अपरिवर्तनीय है। दूसरी ओर, JUL लकड़हारा उत्परिवर्तनीय है। Log4j लकड़हारा भी परिवर्तनशील है। तो सही होने के लिए, यदि आप log4j या JUL का उपयोग कर रहे हैं, तो यह "logger" होना चाहिए, और यदि आप slf4j का उपयोग कर रहे हैं, तो यह LOGGER होना चाहिए।
ध्यान दें कि ऊपर दिए गए slf4j javadocs पृष्ठ में एक उदाहरण है जहां वे "लकड़हारा" का उपयोग करते हैं, न कि "LOGGER" का।
ये निश्चित रूप से केवल कन्वेंशन हैं और नियम नहीं हैं। यदि आप slf4j का उपयोग कर रहे हैं और आप "लकड़हारा" का उपयोग करना चाहते हैं, क्योंकि आप अन्य चौखटे से उपयोग किए जाते हैं, या यदि यह टाइप करना आसान है, या पठनीयता के लिए, आगे बढ़ें।