आप निश्चित रूप से उदाहरण के सदस्यों से पहुँच स्थिर सदस्यों ... लेकिन आप को समझना चाहिए कर सकते हैं क्यों आप एक उदाहरण के बिना उदाहरण के सदस्यों तक नहीं पहुँच सकता।
आपकी कक्षा मूल रूप से कहती है कि ClassA
का प्रत्येक उदाहरण आपको किसी विशेष आईडी से जुड़े आदेशों की एक सूची प्राप्त करने की अनुमति देता है। अब, ClassA
के विभिन्न उदाहरण अलग-अलग परिणाम दे सकते हैं - उदाहरण के लिए, वे अलग-अलग डेटाबेस से कनेक्ट हो सकते हैं। DoSomethingElse
में आप कौन से परिणाम प्राप्त करना चाहते हैं?
एक सरल उदाहरण के लिए, मान लीजिए कि हम एक Person
वर्ग था, और प्रत्येक व्यक्ति को एक नाम था: "Person.Name
क्या है"
public class Person
{
public string Name { get; set; }
}
यह मतलब है यह पूछना नहीं - क्योंकि आपने यह निर्दिष्ट नहीं किया है कि आप किस व्यक्ति के बारे में बात कर रहे हैं।
आप या तो ClassA.GetOrders
स्थिर करना चाहिए - अगर यह आभासी सदस्यों सहित किसी भी प्रति-उदाहरण जानकारी, शामिल नहीं करता है - या ClassB
ClassA
का उदाहरण है जब बाहर आदेश पाने के उपयोग करने के लिए के बारे में पता कर सकते हैं।
आप हमें इन कक्षाओं के लिए और अधिक यथार्थवादी नाम बताएँ सकता है, तो हम मार्गदर्शन दे सकता है के रूप में जो का हल और अधिक उपयुक्त होने की संभावना है ... व्यक्तिगत रूप से मैं आम तौर पर पक्ष बाद दृष्टिकोण, के रूप में स्थिर सदस्यों आम तौर पर नेतृत्व करेंगे कम परीक्षण योग्य कोड के लिए।
स्रोत
2010-06-30 19:29:21
'GetOrders (..)' को कॉल करने के लिए आपको 'कक्षा' के उदाहरण की आवश्यकता होगी क्योंकि यह 'स्थिर 'चिह्नित नहीं है। क्या आपका मतलब यह 'स्थिर' होना चाहिए? –
क्लास ए सिंगलटन – PositiveGuy
मुझे लगता है कि मैं सिंगलटन को अन्य विधानसभा में संभवतः क्लासबी – PositiveGuy