2011-09-21 15 views
7

मैं जावा में सी # कोड परिवर्तित कर रहा हूं। कोड में कनवर्ट करने वाले कोड में .Net MemberwiseClone पर कई अलग-अलग स्थान हैं जो निर्भर हैं।.Net MemberwiseClone बनाम जावा क्लोन

ऐसा लगता है कि वे दोनों उथले प्रतिलिपि बनाते हैं। तो जावा के clone() के साथ इन कॉल को आसानी से बदलना संभव है? मैं यह सुनिश्चित करना चाहता हूं कि कोई मामूली अंतर नहीं है जिससे बग को ठीक करना मुश्किल हो जाएगा।

उत्तर

6

मान लिया जाये कि जावा में clone() कॉल है सिर्फObject.clone() कार्यान्वयन बुला, तो मेरा मानना ​​है कि वे एक ही व्यवहार किया है:

  • एक ही कक्षा की एक और वस्तु बनाई गई है
  • क्षेत्रों कॉपी कर रहे हैं (विरासत पदानुक्रम ऊपर और नीचे)
  • सभी प्रतियां उथले तरीके से
  • कोई उपयोगकर्ता निर्दिष्ट कोड निष्पादित नहीं किया गया है (कन्स्ट्रक्टर आदि)
संबंधित मुद्दे