问题描述
- MyJsonObject这个是什么,是类吗?
-
MyJsonObject代表什么,在下面这段代码里面。麻烦给看一下,谢谢CloseableHttpClient httpclient = HttpClients.createDefault();
HttpGet httpget = new HttpGet("http://localhost/json");
ResponseHandler<MyJsonObject> rh = new ResponseHandler<MyJsonObject>() { @Override public JsonObject handleResponse( final HttpResponse response) throws IOException { StatusLine statusLine = response.getStatusLine(); HttpEntity entity = response.getEntity(); if (statusLine.getStatusCode() >= 300) { throw new HttpResponseException( statusLine.getStatusCode(), statusLine.getReasonPhrase()); } if (entity == null) { throw new ClientProtocolException("Response contains no content"); } Gson gson = new GsonBuilder().create(); ContentType contentType = ContentType.getOrDefault(entity); Charset charset = contentType.getCharset(); Reader reader = new InputStreamReader(entity.getContent(), charset); return gson.fromJson(reader, MyJsonObject.class); } }; MyJsonObject myjson = client.execute(httpget, rh);
解决方案
从倒数第四行代码 :return gson.fromJson(reader, MyJsonObject.class); 可以判断MyJsonObject.class的性质
Gson是google的一个Json库,使用非常简单。在Java中,只要引入包,创建对象就可以用了。
fromJson是Gson提供的一个方法。用来将一个Json数据转换为对象。调用方法是:new Gson().fromJson(Json_string,class);
这里的MyJsonObject.class应该是自定义的一个类,使用Gson就可以直接j将JSON数据封装成这个自定义的类直接使用,不用再手动解析Json里的每一行数据。
解决方案二:
应该是自定义的一个json解析类,http请求返回的数据是json的话,应该能直接被该类解析,现在解析json的方式有多种,可能是完全自己解析,
也有可能是自己的json封装了第三方的解析。
解决方案三:
?在现实世界中,你会经常发现很多独立对象都属于相同类型。可能有数千辆自行车,它们的制造商和型号都相同。每辆自行车都出于相同的蓝图,因此包含相同的组件。在面向对象的术语中,我们说你的自行车是被称为自行车的对象类(class of object)的一个实例(instance)。类(class)是创建独立对象的蓝图。下面的Bicycle类是自行车的一个实现:class Bicycle {......
答案就在这里:类是什么?
时间: 2024-09-20 16:23:35