报错信息:
com.alibaba.fastjson.JSONException:
主要是用到了内部类,需要将内部类进行static
分析:
这个问题主要是因为Java内部类和嵌套类的实现机制造成的.
静态的内部类叫做嵌套类,那么两者有什么区别呢?
一般的内部类虽然在源代码中没有写,但是编译后会看到里面多了一个指向外部类的引用,如果使用内部类进行json序列化,会因为找不到它的外部类而报异常,而嵌套类因为是静态的,里面没有默认的外部类的引用,即使没有外部类的对象也能够使用,因此在json转换的时候不会报错。
版权声明:本文为m0_55051386原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。