2012-10-20 81 views
0

我需要將java.lang.reflect.Field從一個進程傳遞到另一個使用RMI的進程,但是Field未實現Serializable接口。我怎麼能克服這個問題?序列化字段類

回答

3

通過RMI傳遞字段沒有意義。 Field實例實際上是一個java.lang.Class實例的依賴對象,並且Class對象也不可傳輸。 (這一個Class不是傳染性的原因是,它會呈現各種討厭的類型檢查的問題......考慮到一個Class實例實際上表示引用類型。)

您將需要申報的有關Field場爲transient。如果您想傳輸Field信息,則可能需要以字段名稱/類名稱的形式傳遞它,然後在另一端以自定義readObject方法重建Field