Czy istnieje implementacja, która serializuje obiekt Java jako kod Java? Na przykład, jeśli mam obiektSerializuj obiekt Java do kodu Java?
Map<String,Integer> m = new Map<String,Integer>();
m.put("foo",new Integer(21));
mogę serializacji to za pomocą
ObjectOutputStream out = new ObjectOutputStream(...);
out.writeObject(m);
out.flush();
a wyjście będzie, na przykład, być
java.util.Map<String,Integer> m = new java.util.Map<String,Integer>();
m.put("foo",new Integer(21));
Dlaczego chcesz tego? Czasami łatwiej jest programowo skompilować złożone obiekty, a następnie zakończyć tworzenie ręcznie w kodzie. Kod ten można następnie włączyć do źródła i wersji kontrolowanej ze wszystkim innym. Zauważ, że używanie zewnętrznych serializowanych obiektów nie jest wyjątkiem.
Dzięki za pomoc, którą możesz udzielić.
Nie sądzę, że istnieje jakikolwiek (standardowy) sposób na zrobienie tego –
(+1) dla "Dlaczego tego chcesz", wiele pytań wymaga czegoś niezwykłego, ale nie wyjaśnia dlaczego. A tam jest dużo generowania kodu auta, kiedy generowane są główne rzeczy, a tylko kilka szczegółów jest kodowanych ręcznie ... – umlcat
Inną opcją jest generowanie kodu statycznego (przez obiekt zewnętrzny) - więc nie musisz tego robić ręcznie. Zaletą tego jest to, że nie musisz tracić cykli procesora, deserializując go. – mindas