java父类转子类的一个方法
一般子类可以转父类。但父类转子类就会报cast error。
使用jsonobject
思想:先把父类转jsonstring
再把jsonstring转子类。剩余的子类值可以设定进去。
import com.alibaba.fastjson.JSONObject; public class test { public static void main(String[] args) { B b = new B(); b.setB("1"); String ob = JSONObject.toJSONString(b); A a = (A)JSONObject.parseObject(ob, A.class); a.setA("2"); System.out.println(a.getA()); } } class A extends B { private String a; public String getA() { return a; } public void setA(String a) { this.a = a; } } class B { private String b; public String getB() { return b; } public void setB(String b) { this.b = b; } }