मैं अपने कार्यक्रमों में से किसी एक में एक बग को ठीक करने की कोशिश कर रहा हूं, जो मुझे लगता है कि हाइबरनेट के कारण यह पता लगाना चाहिए कि किसी ऑब्जेक्ट के इंस्टेंस को तत्काल (या किसी अन्य) कन्स्ट्रक्टर को कॉल किए बिना किसी ऑब्जेक्ट को तुरंत कैसे चालू किया जाए।क्या कन्स्ट्रक्टर को कॉल किए बिना जावा में किसी ऑब्जेक्ट का उदाहरण बनाना संभव है?
उत्तर
असल में, हाँ, जब आप ऑब्जेक्ट को तत्काल बनाते हैं तो कन्स्ट्रक्टर को बाईपास करना संभव है, यदि आप ऑब्जेक्ट को तुरंत चालू करने के लिए objenesis का उपयोग करते हैं। यह प्राप्त करने के लिए बाइटकोड मैनिप्लेशंस करता है।
किसी ऑब्जेक्ट को Deserializing भी निर्माता को बाईपास करेगा।
प्रतिबिंब का उपयोग करके ऐसा करना संभव नहीं है।
हां, किसी ऑब्जेक्ट को deserializing अपने कन्स्ट्रक्टर का आह्वान नहीं करता है।
उसने कहा, मुझे नहीं लगता कि क्यों हाइबरनेट एक ऑब्जेक्ट को क्रमबद्ध करेगा, जब तक कि दूसरे स्तर के कैश में न हो।
Deserialization में एक कन्स्ट्रक्टर का आह्वान किए बिना ऑब्जेक्ट्स बनाना शामिल है।
यह प्रोग्रामेटिक रूप से करने के लिए संभव है (कम से कम सूर्य/ओरेकल जेडीके के साथ)। यह "Creating Objects Without Calling Constructors" में शामिल था, The Java Specialists' Newsletter. का एक संस्करण इसमें sun.*
पैकेजों से कक्षाओं का उपयोग करना शामिल है, इसलिए पोर्टेबल नहीं है।
बस तस्वीर को पूरा करने के लिए: एक नई वस्तु बनाने के लिए विधि clone
का उपयोग करके रचनाकारों को भी बाईपास करता है।
बशर्ते कि क्लोन() सही ढंग से लागू किया गया हो। Super.clone() का उपयोग न करने वाली फ़ैक्टरी विधि के रूप में कार्य करने के लिए क्लोन को ओवरराइड करना संभव है। (जबकि super.clone() का उपयोग किया जाना चाहिए - निर्माता नहीं) – DerMike
- 1. पायथन: प्रारंभकर्ता को कॉल किए बिना कक्षा उदाहरण बनाना
- 2. कन्स्ट्रक्टर का आविष्कार किए बिना ऑब्जेक्ट इंस्टेंस बनाएं?
- 3. क्या सी # में कक्षा के बिना ऑब्जेक्ट बनाना संभव है?
- 4. कन्स्ट्रक्टर को कॉल किए बिना कक्षा को बेकार कैसे करें?
- 5. क्या किसी विशेष विशेषता के साथ संबद्ध किए बिना ActiveRecord ऑब्जेक्ट में त्रुटियां जोड़ना संभव है?
- 6. क्या किसी इंडेक्स को निर्दिष्ट किए बिना किसी आइटम को अजीब में जोड़ना संभव है?
- 7. क्या __init__ को कॉल किए बिना कक्षा को तुरंत चालू करने का कोई तरीका है?
- 8. क्या किसी को नकली प्रमाणीकरण बनाना संभव है?
- 9. क्या फोरैच का उपयोग किए बिना इस कथन को फिर से बनाना संभव है?
- 10. किसी ऑब्जेक्ट कन्स्ट्रक्टर
- 11. जावा: ऑब्जेक्ट क्लास में एक कन्स्ट्रक्टर है?
- 12. संभव उदाहरण/ऑब्जेक्ट का प्रकार
- 13. क्या किसी भी Qt ऑब्जेक्ट को विरासत में प्राप्त किए बिना क्यूटी थ्रेडिंग का उपयोग करना संभव है?
- 14. क्या जावा एनोटेशन का मान अनिवार्य बनाना संभव है?
- 15. क्या कन्स्ट्रक्टर-एक्सटेंशन-विधि बनाना संभव है? कैसे?
- 16. कक्षा घोषित किए बिना वस्तु बनाना संभव है?
- 17. क्या उद्देश्य सी में CLHeading ऑब्जेक्ट बनाना संभव है?
- 18. क्या किसी ऑब्जेक्ट को संदर्भित करना संभव है
- 19. "निजी कन्स्ट्रक्टर कैप्चर" मुहावरे का जावा उदाहरण क्या है?
- 20. क्या सी ++ में विधि कॉल प्रेषक बनाना संभव है?
- 21. क्या जावा प्रतिबिंब का उपयोग करके नेस्टेड क्लास का उदाहरण बनाना संभव है?
- 22. क्या किसी भी संगठन को परिभाषित किए बिना किसी इकाई में किसी फ़ील्ड को मैप करना संभव है?
- 23. क्या AspectJ के साथ एक विधि कॉल करने वाले ऑब्जेक्ट उदाहरण को पुनर्प्राप्त करना संभव है?
- 24. थोर कॉल किए बिना निष्पादन योग्य थोर-संचालित स्क्रिप्ट को कॉल करना संभव है?
- 25. किसी कन्स्ट्रक्टर में मौजूदा ऑब्जेक्ट के पॉइंटर/संदर्भ को पारित करने का पसंदीदा तरीका क्या है?
- 26. जावा - 'ऑब्जेक्ट' का उदाहरण 'शून्य' है?
- 27. क्या एसवीएन सर्वर से टैग की जांच किए बिना TortoiseSVN में किसी टैग से शाखा बनाना संभव है?
- 28. क्या पोर्टेबल वीएम बनाना संभव है?
- 29. बेस ऑब्जेक्ट प्रकार को बेस कन्स्ट्रक्टर कॉल में पास करें
- 30. COM इंटरफ़ेस का नया उदाहरण क्यों बनाना संभव है?
आपको संभावित समाधान की बजाय मूल समस्या पोस्ट करनी चाहिए। –
हाइबरनेट इकाइयों के डिफ़ॉल्ट खाली कन्स्ट्रक्टर का उपयोग करता है। आप गलत रास्ते पर हैं। इसके बजाय अपनी समस्या पोस्ट करें। –