0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

使用IntelliJ IDEA看源碼

Android編程精選 ? 來源:Android編程精選 ? 2023-05-24 09:13 ? 次閱讀

最近正好也沒什么可忙的,就回過頭來鼓搗過去的知識點,到Servlet部分時,以前學(xué)習(xí)的時候硬是把從上到下的繼承關(guān)系和接口實現(xiàn)記得亂七八糟。

這次利用了IDEA的diagram,結(jié)果一目了然,也是好用到炸裂,就此分享。學(xué)會下面功能,了解諸如主流框架源碼之類的東西,就非常舒服了。

1、查看圖形形式的繼承鏈

在你想查看的類的標簽頁內(nèi),點擊右鍵,選擇 Diagrams,其中有 show 和 show ... Popup,只是前者新建在標簽頁內(nèi),后者以浮窗的形式展示:

33adc778-f991-11ed-90ce-dac502259ad0.png

實際上,你也可以從左邊的項目目錄樹中,對你想查看的類點擊右鍵,同樣選擇Diagrams,效果是一樣的:

33d749a4-f991-11ed-90ce-dac502259ad0.png

然后你就會得到如下圖所示的繼承關(guān)系圖形,以自定義的Servlet為例:

34195434-f991-11ed-90ce-dac502259ad0.png

顯而易見的是:

藍色實線箭頭是指繼承關(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)系后圖形如下:

34429704-f991-11ed-90ce-dac502259ad0.png

2.2 展示類的詳細信息

有人說,誒,這怎么夠呢,那繼承下來的那些方法我也想看???簡單,IDEA通通滿足你。 在頁面點擊右鍵,選擇 show categories,根據(jù)需要可以展開類中的屬性、方法、構(gòu)造方法等等。當然,第二種方法也可以直接使用上面的工具欄:

34651694-f991-11ed-90ce-dac502259ad0.png

然后你就會得到:

3498705c-f991-11ed-90ce-dac502259ad0.png

什么,方法里你還想篩選,比如說想看protected權(quán)限及以上范圍的?簡單,右鍵選擇 Change Visibility Level,根據(jù)需要調(diào)整即可。

34bbed84-f991-11ed-90ce-dac502259ad0.png

什么,你嫌圖形太小你看不清楚?IDEA也可以滿足你,按住鍵盤的Alt,竟然出現(xiàn)了放大鏡,驚不驚喜,意不意外?

34d41e22-f991-11ed-90ce-dac502259ad0.png

2.3 加入其他類到關(guān)系中來

當我們還需要查看其他類和當前類是否有繼承上的關(guān)系的時候,我們可以選擇加其加入到當前的繼承關(guān)系圖形中來。 在頁面點擊右鍵,選擇 Add Class to Diagram,然后輸入你想加入的類就可以了:

35127406-f991-11ed-90ce-dac502259ad0.png

例如我們添加了一個Student類,如下圖所示。好吧,并沒有任何箭頭,看來它和當前這幾個類以及接口并沒有發(fā)生什么不可描述的關(guān)系:

3538c17e-f991-11ed-90ce-dac502259ad0.png

2.4 查看具體代碼

如果你想查看某個類中,比如某個方法的具體源碼,當然,不可能給你展現(xiàn)在圖形上了,不然屏幕還不得撐炸? 但是可以利用圖形,或者配合IDEA的structure方便快捷地進入某個類的源碼進行查看。

雙擊某個類后,你就可以在其下的方法列表中游走,對于你想查看的方法,選中后點擊右鍵,選擇 Jump to Source:

3557f850-f991-11ed-90ce-dac502259ad0.png

3589c07e-f991-11ed-90ce-dac502259ad0.png

在進入某個類后,如果還想快速地查看該類的其他方法,還可以利用IDEA提供的structure功能:

35b17574-f991-11ed-90ce-dac502259ad0.png

選擇左側(cè)欄的structure之后,如上圖左側(cè)會展示該類中的所有方法,點擊哪個方法,頁面內(nèi)容就會跳轉(zhuǎn)到該方法部分去。

3、最后

用上面提到的的IDEA這些功能,學(xué)習(xí)和查看類關(guān)系,了解諸如主流框架源碼之類的東西,可以說是非常舒服了。





審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Servlet
    +關(guān)注

    關(guān)注

    0

    文章

    18

    瀏覽量

    7879
  • idea算法
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    1852

原文標題:使用 IntelliJ IDEA 看源碼

文章出處:【微信號:AndroidPush,微信公眾號:Android編程精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Mac使用IntelliJ IDEA創(chuàng)建JavaWeb項目的步驟

    筆記 —— Mac 使用IntelliJ IDEA創(chuàng)建JavaWeb項目
    發(fā)表于 05-27 12:39

    IntelliJ IDEA創(chuàng)建Java工程并用hqC連接數(shù)據(jù)庫的步驟

    IntelliJ IDEA創(chuàng)建一個普通的Java工程并用hqC連接數(shù)據(jù)庫
    發(fā)表于 04-10 14:09

    IntelliJ IDEA Default Keymap

    IntelliJ IDEA Default Keymap
    發(fā)表于 07-12 16:05 ?0次下載

    intellij idea使用教程

    IntelliJ IDEA 有很多人性化的設(shè)置我們必須單獨拿出來講解,也因為這些人性化的設(shè)置讓我們這些 IntelliJ IDEA 死忠粉更加死心塌地使用它和分享它。
    的頭像 發(fā)表于 02-08 16:19 ?2711次閱讀

    IntelliJ IDEA人性化的設(shè)置講解

    區(qū)分大小寫的情況是這樣的:比如我們在 Java 代碼文件中輸入 stringBuffer IntelliJ IDEA 是不會幫我們提示或是代碼補充的,但是如果我們輸入 StringBuffer 就可以進行代碼提示和補充;
    的頭像 發(fā)表于 08-27 15:22 ?2550次閱讀
    <b class='flag-5'>IntelliJ</b> <b class='flag-5'>IDEA</b>人性化的設(shè)置講解

    JetBrains IntelliJ IDEA 適配蘋果M1 Mac

    IntelliJ IDEA 官方發(fā)布新的公告,稱已經(jīng)為早期采用者準備了兩個 Build 版本。這就是 IntelliJ IDEA Ultimate 和 Community。 這些版本與
    的頭像 發(fā)表于 12-11 09:23 ?3888次閱讀

    使用Intellij IDEA的一些小技巧

    https://blog.csdn.net/linsongbin1/article/details/80211919 Intellij IDEA真是越用越覺得它強大,它總是在我們寫代碼的時候,不時
    的頭像 發(fā)表于 09-05 15:03 ?1774次閱讀

    svelte-intellij Svelte的IDEA插件

    ./oschina_soft/svelte-intellij.zip
    發(fā)表于 05-18 14:25 ?1次下載
    svelte-<b class='flag-5'>intellij</b> Svelte的<b class='flag-5'>IDEA</b>插件

    Intellij IDEA插件idea-plugin-protobuf

    ./oschina_soft/idea-plugin-protobuf.zip
    發(fā)表于 05-18 11:09 ?2次下載
    <b class='flag-5'>Intellij</b> <b class='flag-5'>IDEA</b>插件<b class='flag-5'>idea</b>-plugin-protobuf

    IntelliJ IDEA 2022.2的主要更新內(nèi)容

    IntelliJ IDEA 2022.2 為遠程開發(fā)功能帶來了多項質(zhì)量改進,使其更美觀、更穩(wěn)定。從 v2022.2 開始,IntelliJ IDEA 使用 JetBrains Runt
    的頭像 發(fā)表于 08-04 10:58 ?1428次閱讀

    IntelliJ Idea開發(fā)環(huán)境安裝教程

    我們后面會在IntelliJ Idea上開發(fā),因此先安裝開發(fā)環(huán)境。
    的頭像 發(fā)表于 10-17 10:53 ?1232次閱讀

    IntelliJ IDEA 2022.3發(fā)布

    IntelliJ IDEA 2022.3 正式發(fā)布,在新版本中,開發(fā)者可以通過設(shè)置切換到新 UI,即可預(yù)覽新的 IDE 外觀。此版本引入了一個新的 Settings Sync(設(shè)置同步)解決方案,用于同步和備份自定義用戶設(shè)置。此外,新版本的 IDE 還具有以下多項其他改進
    的頭像 發(fā)表于 12-02 10:00 ?786次閱讀

    IntelliJ IDEA快捷鍵大全和動圖演示

    本文參考了 IntelliJ IDEA 的官網(wǎng),列舉了IntelliJ IDEA(Windows 版)的所有快捷鍵。并在此基礎(chǔ)上,為 90% 以上的快捷鍵提供了動圖演示,能夠直觀的看到
    的頭像 發(fā)表于 08-11 14:08 ?657次閱讀
    <b class='flag-5'>IntelliJ</b> <b class='flag-5'>IDEA</b>快捷鍵大全和動圖演示

    Intellij IDEA 開發(fā)工具實例

    本篇博客我們將會以Intellij IDEA 開發(fā)工具為例,所以我這里簡單談?wù)勎覀兯褂玫拈_發(fā)工具。 目前大家做Java開發(fā)的,無外乎就兩種,eclipse或者Intellij IDEA
    的頭像 發(fā)表于 09-25 16:21 ?787次閱讀
    <b class='flag-5'>Intellij</b> <b class='flag-5'>IDEA</b> 開發(fā)工具實例

    eclipse的項目怎么在idea中運行

    要在IntelliJ IDEA中運行Eclipse項目,可以按照以下步驟進行操作: 打開IntelliJ IDEA:首先,確保已經(jīng)安裝并成功啟動了I
    的頭像 發(fā)表于 12-06 13:54 ?3448次閱讀