Gson是Google提供的用來在Java對象和JSON數據之間進行映射的Java類庫。能夠將一個Json字符轉成一個Java對象,或者將一個Java轉化爲Json字符串。java
而後咱們先寫一個demo來用Gson將一個json轉化爲json對象:json
輸出:google
這裏定義的Person類對象
、blog
而後咱們看看是怎麼Gson經過反射轉化爲java對象的,主要是看Gson類的fromJson(Reader json, Type typeOfT)方法,將原來傳進去的String類型的json封裝到JsonReader裏面,這個就是讀取數據的處理,就很差好看了,具體操做是在fromJson裏面。字符串
而後咱們看看對傳進去的typeOfT作了什麼處理,主要看一下getAdapter裏面進行了怎麼樣的轉化。get
如下是com.google.gson.internal.ConstructorConstructor獲取對象的構造方法。變量
其實更關心反射取到的字段,如下是獲取類的變量字段,主要仍是經過反射的Field[] fields = raw.getDeclaredFields()。反射
其實簡單一點,咱們能夠寫個相似的解析的方式:方法