ソケットを介してサーバーと通信する必要がある Android の小さなアプリがあります。問題は、Gson を使用してオブジェクトの参照をシリアル化できるかどうかです。
私は例を作ります:私がこのようなBクラスを持っているとします:
public class B{
int n;
public B(int n){
this.n=n;
}
public int getN() {
return n;
}
public void setN(int n) {
this.n = n;
}
public B() {
super();
}
}
そして、このようなAクラス
public class A{
B b1;
B b2;
B b3;
public B getB1() {
return b1;
}
public void setB1(B b1) {
this.b1 = b1;
}
public B getB2() {
return b2;
}
public void setB2(B b2) {
this.b2 = b2;
}
public B getB3() {
return b3;
}
public void setB3(B b3) {
this.b3 = b3;
}
public A(B b1, B b2, B b3) {
super();
this.b1 = b1;
this.b2 = b2;
this.b3 = b3;
}
public A() {
super();
}
}
そして私が呼ぶよりも
B b1 = new B(1); B b2 = new B(2)
A a = new A(b1,b1,b2);
シリアル化する場合((new Gson()).toJson(a,A.class)
取得したオブジェクトを使用して
{"b1":{"n":1},"b2":{"n":1},"b3":{"n":2}}
しかし、私は何かがこれをリンクしたいと思います
{istance1:{b1: {"b1":istance2,"b2":istance2,"b3":istance2},istance2: {"n":1},istance3:{"n":2}}
手伝って頂けますか?たくさんのページを読みましたが、何も見つかりませんでした。