एलएसपी एक वर्ग के उदाहरण को एक विधि में पारित करने के लिए लागू होता है, विधि उस उदाहरण के साथ कुछ सामान करती है, और अक्सर कुछ प्रकार के परिणाम उत्पन्न करती है। यह स्थिर वर्गों के लिए मायने नहीं रखता क्योंकि C # में आप एक स्थिर वर्ग का उदाहरण नहीं बना सकते हैं।
इससे भी महत्वपूर्ण बात यह है कि स्थिर वर्गों को सील कर दिया जाता है और इसलिए उन्हें विरासत में नहीं मिला जा सकता है। यह आपके प्रश्न को C # जाता है।
आप कह सकते हैं कि स्थैतिक कक्षाएं हमेशा एलएसपी-अनुरूप होती हैं क्योंकि आप कभी भी उस सिद्धांत का उल्लंघन करने वाले उपवर्ग का उत्पादन नहीं कर सकते हैं। आप यह भी कह सकते हैं कि स्थिर वर्ग कभी भी उसी कारण से एलएसपी-अनुरूप नहीं होते हैं।
जावा में, स्थिर कक्षाएं थोड़ी भिन्न होती हैं। आप एक शीर्ष-स्तरीय वर्ग को "स्थिर" के रूप में चिह्नित नहीं कर सकते हैं, इसलिए यदि आप C # के स्थिर वर्ग के समान एक उपयोगिता वर्ग बनाना चाहते हैं, तो आपको इसे
final
अपने निर्माता के रूप में घोषित करना होगा और इसे छिपाना होगा। एक बार जब आप ऐसा कर लेते हैं, हालांकि, वे C # के समान व्यवहार करते हैं - तो आप उन्हें तुरंत नहीं कर सकते या उन्हें उप-वर्ग नहीं कर सकते। आप एक आंतरिक वर्ग के रूप में घोषित कर सकते हैं
static
, लेकिन इसका मतलब यह नहीं है कि यह सी # में करता है: यह बस एक
नेस्टेड शीर्ष-स्तरीय वर्ग को दर्शाता है ।
VB.NET इस मामले में ठीक उसी तरह से व्यवहार करता है, जैसा कि मैं जानता हूं।
आपने उल्लेख नहीं किया कि क्या आप अन्य सिद्धांतों में रुचि रखते हैं, लेकिन मैं उन्हें पूर्णता के लिए वैसे भी शामिल करने जा रहा हूं।
S निगलना जिम्मेदारी सिद्धांत : एक स्थिर वर्ग आसानी से इस सिद्धांत का पालन करता है।
O पेन / बंद सिद्धांत : चूंकि स्थिर कक्षाएं सील की जाती हैं, वे कभी भी इस सिद्धांत का पालन नहीं कर सकते हैं।
एल iskov प्रतिस्थापन सिद्धांत : ऊपर के रूप में।
मैं अलग-थलग अलगाव सिद्धांत : एक एकल वर्ग के लिए लागू नहीं होता है, लेकिन एक बड़े स्थिर वर्ग को छोटे में विभाजित करता है, और अधिक विशिष्ट इस सिद्धांत का पालन करने की दिशा में एक कदम हो सकता है।
डी एपेंडेंसी उलटा सिद्धांत : स्थिर कक्षाएं इंटरफेस को लागू नहीं कर सकती हैं, इसलिए इसका उपयोग करने वाला कोई भी वर्ग उस समय जो भी कार्यान्वयन मौजूद है, उस पर हमेशा निर्भर करेगा। स्टेटिक वर्ग इस सिद्धांत का उल्लंघन करते हैं।
चूंकि स्थिर वर्ग सभी 5 मानदंडों को पूरा नहीं करते हैं, इसलिए वे SOLID नहीं हैं।