3
我偶然關於效果,即的JSON-lib
(2.4)的默認配置不允許於與鍵class
,metaClass
和declaringClass
(見JsonConfig.DEFAULT_EXCLUDES
)使用的值。當相應的對象被添加到JSONArray
(請參閱下面的代碼段)時,這些鍵值對將從JSON
表示中剝離。爲什麼「class」,「metaClass」和「declaringClass」不能用作JSON-lib中的鍵?
// import net.sf.json.*;
JSONObject anElement = new JSONObject();
anElement.put("term", "a value");
anElement.put("class", "a value");
JSONArray theArray = new JSONArray();
theArray.add(anElement); // Default behavior.
boolean termWasAdded = (((JSONObject)theArray.get(0)).get("term")).equals("a value");
// evaluates to true
boolean classWasAdded = ((JSONObject)theArray.get(0)).get("class") != null;
// evaluates to false
我的問題:任何人可以解釋,爲什麼class
,metaClass
和declaringClass
不能作爲這裏的鑰匙? - 這些物品在某種程度上保留了JSON
中的符號嗎?