사람이 Gson의 인스턴스 작성기를 사용하여 Runnable 개체를 seralize하는 방법을 알고 있습니까?Gson이 runnable을 seralize합니까?
덕분에, 언급 케빈
사람이 Gson의 인스턴스 작성기를 사용하여 Runnable 개체를 seralize하는 방법을 알고 있습니까?Gson이 runnable을 seralize합니까?
덕분에, 언급 케빈
으로, 인스턴스 창조주 기능은 직렬화하지 직렬화입니다. 또한 인스턴스 작성자를 사용하여 Runnable
을 비 직렬화 할 필요는 없습니다.
다음은 Gson을 사용하여 Runnable
인스턴스를 직렬화 및 비 직렬화하는 예입니다. 당신이 달성하려고하는 일에 대해 뭔가 인스턴스 창조주의 사용을 필요로하는 경우
import com.google.gson.Gson;
public class GsonFoo
{
public static void main(String[] args)
{
BarRun runRunRun = new BarRun();
runRunRun.name = "Whiskey";
runRunRun.state = 42;
String json = new Gson().toJson(runRunRun);
System.out.println(json);
// output: {"name":"Whiskey","state":42}
BarRun runCopy = new Gson().fromJson(json, BarRun.class);
System.out.println(runCopy.name); // Whiskey
System.out.println(runCopy.state); // 42
}
}
class BarRun implements Runnable
{
String name;
int state;
@Override
public void run()
{
// do something useful
}
}
는, 다음의 예뿐만 아니라 the InstanceCreator JavaDocs에, the Gson User Guide section on the subject에서 사용할 수 있습니다.
감사합니다. TON 프로그래머 Bruce! –
이것은 오래된 게시물이지만 'run() '함수의 내용을 직렬화 할 수 있는지 궁금합니다. 'Runable'과 'Serializable '만 구현하는 'CustomRunnable'클래스가 있지만 직렬화 된 객체에서 'CustomRunnable '을 검색하고 'run()'함수를 호출 할 수 없습니다. – Jacks
인스턴스 작성 기능은 직렬화가 아닌 직렬화를위한 기능입니다. –