我在我的代碼中創建了一個對象的克隆。代碼生成和反射
Class<?> oc = o.getClass();
Object preStateInstance = oc.newInstance();
現在我必須輸出一個Java文件,我希望創建的文件具有該克隆實例的分配。例如:
Object varX = preStateInstance.value;
這可能嗎?怎麼樣?
我想要做的是創建測試用例。我想將測試中的對象的實例保存爲預置狀態值,以便能夠比較對象的前後狀態。我已經在我的代碼中完成了它,現在我需要將它輸出到JUnit文件中。在處理JUnit文件寫入的類上,我只能訪問preStateInstance
。
編輯:我覺得我還沒有讓自己清楚。我的JUnit編寫器要求我傳遞一個字符串,以便將其輸出到完整的JUnit文件。克隆實例後,我將不得不告訴我的作者如何在它的文件中初始化它。
我相信這是可能的,但我不明白你想要做什麼。你給的行可以編譯。順便說一句:創建相同類型的新實例不克隆恕我直言。 –
你能添加更多的代碼嗎?解釋一下更好嗎? BTW類#newInstance創建新的實例,而不是對象的空白。 – zacheusz
我曾經相信'newInstance'會創建一個克隆,有沒有辦法做到這一點? –