दृष्टिकोण आप कोड तुम सच है के ऊपर कितना नियंत्रण के आधार पर ले सकता है बहुत से? यदि हां, तो आप ऐसा नहीं कर सकते हैं, प्रार्थना करें कि आपकी तीसरी पार्टी एक ठोस वस्तु के बजाय एक इंटरफ़ेस स्वीकार करती है।
सीएलआर में अपने सीलबंद वर्ग में विधियों को रोकने के लिए हुक लिखना पूरी तरह से संभव है, इस प्रकार कुछ मॉकिंग फ्रेमवर्क गैर वर्चुअल विधियों और मुहरबंद कक्षाओं को नकल करने के लिए काम करते हैं। I यह अनुशंसा नहीं करें क्योंकि आपका तृतीय-पक्ष कोड किसी ऑब्जेक्ट के किसी विशेष कार्यान्वयन के विरुद्ध लिखा गया था, और तृतीय-पक्ष कोड की नाक के तहत कार्यान्वयन को स्वैप करने से गैर-तुच्छ, अनिर्धारित परिणाम हो सकते थे।
2) क्या आप अपने कोड में मुहरबंद कक्षा का उपभोग कर रहे हैं? यदि ऐसा है, तो गैजेट रैपर जाओ! अपनी सीलबंद कक्षा के समान सार्वजनिक तरीकों के साथ एक गैर-मुहरबंद कक्षा बनाएं, सार्वजनिक तरीकों को आपके मुहरबंद वस्तु से गुज़रना चाहिए, फिर आप अपनी कक्षा की कार्यक्षमता को आवश्यकतानुसार ओवरराइड कर सकते हैं।
3) क्या आपके पास सीलबंद कक्षा में कोड है? यदि ऐसा है, तो वर्ग परिभाषा पाएं, इसे हाइलाइट करने के लिए 'मुहरबंद' कीवर्ड को डबल-क्लिक करें, आवश्यकतानुसार हटाएं कुंजी दबाएं;) या हो सकता है कि वे विधियों को स्वैप करें जो आपके सीलबंद ऑब्जेक्ट को एक ही सार्वजनिक तरीकों के साथ इंटरफ़ेस के लिए स्वीकार करते हैं।
लेकिन आप विषय वर्ग को प्रॉक्सी कक्षा के साथ प्रतिस्थापित नहीं कर पाएंगे क्योंकि उनके पास विभिन्न प्रकार हैं। – Ikke
@ikke: यह सच है। इसलिए मैंने प्रॉक्सी पैटर्न नहीं कहा। – Ikaso
प्रॉक्सी के विपरीत एडाप्टर नहीं होगा? –