?
Hab JSON ehrlich gesagt auch nie wirklich verstanden, aber afaik ist es doch so, das deine Klasse immer ein JSONObject ist und die Attribute der Klasse dann in einem JSONArray liegen.
Also ein JSONObject hat nie ein JSONObject, sondern immer ein JSONArray.
btw was mich an JSON auch irritiert hat war, dass es aus zB einem String Attribute mit dem Wert "null" einfach einen Leerstring (also "")gemacht hat oder eben aus einem Integer "null" dann "0". Sollte laut http://www.json.org/ nicht so sein (wenn ich das richtig verstehe), somit lag/liegt da der Fehler wohl eher bei mir.
Grundsätzlich hätte ich jetzt auch gedacht, dass man den JSON String in sein eigenes Datenobjekt parst und dann kannst du ja sowieso wie obj.getRows(0).getElements(0).getDistance() machen
Aber wie gesagt, ich hab keinen Ahnung.