首先,需要知道JSON类是个抽象类。
public abstract class JSON implements JSONStreamAware, JSONAware {
略..........可看源码
}
其次,JSONObject和JSONArray都继承了JSON类,并且JSONObject实现了map接口,而JSONArray实现了List接口。
public class JSONObject extends JSON implements Map<String, Object>, Cloneable, Serializable, InvocationHandler {
略...........可看源码
}
public class JSONArray extends JSON implements List<Object>, Cloneable, RandomAccess, Serializable {
略...............可看源码
}
所以,JSONObject具有JSON类和Map接口的所有方法,而JSONArray具有JSON类和List接口的所有方法。这时,我们就可以自己创建JSON对象,并通过map接口或者list接口的方法进行赋值,取值以及删值等等操作。