आप इसे विधियों में पास कर सकते हैं, लेकिन setTopWorldAgent() सार नहीं हो सकता है। आप कन्स्ट्रक्टर में वर्चुअल कॉल नहीं कर सकते हैं।
एक वस्तु के निर्माता में, आप उस वस्तु या आधार वर्ग में परिभाषित तरीकों कॉल कर सकते हैं, लेकिन क्योंकि व्युत्पन्न वर्ग के कुछ हिस्सों का निर्माण नहीं कर रहे हैं आप, कुछ है कि एक व्युत्पन्न वर्ग द्वारा प्रदान किया जाएगा कॉल करने के लिए उम्मीद नहीं कर सकते अभी तक। अगर setTopWorldAgent() सार था तो मैं किसी प्रकार की कंपाइलर त्रुटि की अपेक्षा करता।
जावा में, आप contructor के साथ आश्चर्य की बात व्यवहार और व्युत्पन्न वर्ग प्राप्त कर सकते हैं - यहाँ एक उदाहरण
http://en.wikipedia.org/wiki/Virtual_functions#Java_3
है आप C# या सी ++, आप इसे कॉल करने के लिए सुरक्षित है सोच सकते हैं करने के लिए उपयोग किया जाता है वर्चुअल फ़ंक्शंस और ओवरराइड वाले कॉल नहीं कर रहे हैं। जावा में, वर्चुअल कॉल तब भी बनाई जाती है जब व्युत्पन्न वर्ग पूरी तरह से निर्मित नहीं होता है।
यदि यह नहीं हो रहा है, तो संभवतया, सेटपॉपवर्ल्डएजेंट() की ज़रूरतों के सभी हिस्सों को प्रारंभ किया गया है - यदि नहीं, तो संभवतः यह उन सदस्यों में से एक है जिन्हें प्रारंभ करने की आवश्यकता है।
संपादित करें: सोचा कि यह सी #
स्रोत
2008-09-24 13:45:45
मुझे लगता है कि setTopWorldAgent में कोड है जहां अपवाद हो रहा है। हो सकता है कि आप अपवाद के स्टैक ट्रेस और उस विधि के कोड को जोड़ सकें। –
मैं देखना चाहता हूं कि अंतिम समाधान प्रश्नकर्ता से क्या था। –
इसे तर्क कहा जाता है और पैरामीटर नहीं। – Pavel