最近正好也沒什么可忙的汉额,就回過頭來鼓搗過去的知識點,到Servlet部分時适室,以前學(xué)習(xí)的時候硬是把從上到下的繼承關(guān)系和接口實現(xiàn)記得亂七八糟勿负。
這次利用了IDEA的diagram馏艾,結(jié)果一目了然,也是好用到炸裂奴愉,就此分享琅摩。
1、查看圖形形式的繼承鏈
在你想查看的類的標(biāo)簽頁內(nèi)锭硼,點擊右鍵房资,選擇 Diagrams,其中有 show 和 show ... Popup檀头,只是前者新建在標(biāo)簽頁內(nèi)轰异,后者以浮窗的形式展示:
實際上鳖擒,你也可以從左邊的項目目錄樹中溉浙,對你想查看的類點擊右鍵,同樣選擇Diagrams蒋荚,效果是一樣的:
然后你就會得到如下圖所示的繼承關(guān)系圖形,以自定義的Servlet為例:
顯而易見的是:
- 藍(lán)色實線箭頭是指繼承關(guān)系
- 綠色虛線箭頭是指接口實現(xiàn)關(guān)系
2惊奇、優(yōu)化繼承鏈圖形,想我所想
2.1 去掉不關(guān)心的類
得到的繼承關(guān)系圖形播赁,有些并不是我們想去了解的颂郎,比如上圖的Object和Serializable,我們只想關(guān)心Servlet重要的那幾個繼承關(guān)系容为,怎么辦乓序?
簡單寺酪,刪掉。點擊選擇你想要刪除的類替劈,然后直接使用鍵盤上的delete鍵就行了寄雀。清理其他類的關(guān)系后圖形如下:
2.2 展示類的詳細(xì)信息
有人說陨献,誒盒犹,這怎么夠呢,那繼承下來的那些方法我也想看罢R怠急膀?簡單,IDEA通通滿足你龄捡。
在頁面點擊右鍵卓嫂,選擇 show categories,根據(jù)需要可以展開類中的屬性墅茉、方法命黔、構(gòu)造方法等等呜呐。當(dāng)然就斤,第二種方法也可以直接使用上面的工具欄:
然后你就會得到:
什么洋机,方法里你還想篩選,比如說想看protected權(quán)限及以上范圍的洋魂?簡單绷旗,右鍵選擇 Change Visibility Level,根據(jù)需要調(diào)整即可副砍。
什么,你嫌圖形太小你看不清楚豁翎?IDEA也可以滿足你角骤,按住鍵盤的Alt,竟然出現(xiàn)了放大鏡心剥,驚不驚喜邦尊,意不意外?
2.3 加入其他類到關(guān)系中來
當(dāng)我們還需要查看其他類和當(dāng)前類是否有繼承上的關(guān)系的時候蝉揍,我們可以選擇加其加入到當(dāng)前的繼承關(guān)系圖形中來。
在頁面點擊右鍵畦娄,選擇 Add Class to Diagram又沾,然后輸入你想加入的類就可以了:
例如我們添加了一個Student類,如下圖所示杖刷。好吧撼短,并沒有任何箭頭,看來它和當(dāng)前這幾個類以及接口并沒有發(fā)生什么不可描述的關(guān)系:
2.4 查看具體代碼
如果你想查看某個類中曲横,比如某個方法的具體源碼,當(dāng)然不瓶,不可能給你展現(xiàn)在圖形上了禾嫉,不然屏幕還不得撐炸?
但是可以利用圖形蚊丐,或者配合IDEA的structure方便快捷地進入某個類的源碼進行查看熙参。
雙擊某個類后,你就可以在其下的方法列表中游走麦备,對于你想查看的方法孽椰,選中后點擊右鍵,選擇 Jump to Source:
在進入某個類后,如果還想快速地查看該類的其他方法呛梆,還可以利用IDEA提供的structure功能:
選擇左側(cè)欄的structure之后,如上圖左側(cè)會展示該類中的所有方法填物,點擊哪個方法纹腌,頁面內(nèi)容就會跳轉(zhuǎn)到該方法部分去。
3滞磺、最后
用上面提到的的IDEA這些功能升薯,學(xué)習(xí)和查看類關(guān)系,了解諸如主流框架源碼之類的東西击困,可以說是非常舒服了涎劈。