最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

超詳細(xì)的Intellij IDEA 看源碼必備技能

 更新時(shí)間:2020年04月15日 11:32:10   作者:Java技術(shù)棧  
這篇文章主要介紹了Intellij IDEA 看源碼必備技能,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

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

這次利用了IDEA的diagram,結(jié)果一目了然,也是好用到炸裂,就此分享。

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

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

實(shí)際上,你也可以從左邊的項(xiàng)目目錄樹中,對(duì)你想查看的類點(diǎn)擊右鍵,同樣選擇Diagrams,效果是一樣的:

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

顯而易見的是:

  • 藍(lán)色實(shí)線箭頭是指繼承關(guān)系
  • 綠色虛線箭頭是指接口實(shí)現(xiàn)關(guān)系

2、優(yōu)化繼承鏈圖形,想我所想

2.1 去掉不關(guān)心的類

得到的繼承關(guān)系圖形,有些并不是我們想去了解的,比如上圖的Object和Serializable,我們只想關(guān)心Servlet重要的那幾個(gè)繼承關(guān)系,怎么辦?

簡(jiǎn)單,刪掉。點(diǎn)擊選擇你想要?jiǎng)h除的類,然后直接使用鍵盤上的delete鍵就行了。

清理其他類的關(guān)系后圖形如下:

2.2 展示類的詳細(xì)信息

有人說,誒,這怎么夠呢,那繼承下來的那些方法我也想看?。亢?jiǎn)單,IDEA通通滿足你。

在頁面點(diǎn)擊右鍵,選擇 show categories,根據(jù)需要可以展開類中的屬性、方法、構(gòu)造方法等等。當(dāng)然,第二種方法也可以直接使用上面的工具欄:

然后你就會(huì)得到:

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

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

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

當(dāng)我們還需要查看其他類和當(dāng)前類是否有繼承上的關(guān)系的時(shí)候,我們可以選擇加其加入到當(dāng)前的繼承關(guān)系圖形中來。關(guān)注微信公眾號(hào):Java技術(shù)棧,在后臺(tái)回復(fù):idea,可以獲取我整理的 N 篇 idea 教程,都是干貨。

在頁面點(diǎn)擊右鍵,選擇 Add Class to Diagram,然后輸入你想加入的類就可以了:

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

2.4 查看具體代碼

如果你想查看某個(gè)類中,比如某個(gè)方法的具體源碼,當(dāng)然,不可能給你展現(xiàn)在圖形上了,不然屏幕還不得撐炸?Intellij IDEA 閱讀源碼的 4 個(gè)絕技,這篇必看。

但是可以利用圖形,或者配合IDEA的structure方便快捷地進(jìn)入某個(gè)類的源碼進(jìn)行查看。

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

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

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

3、最后

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

到此這篇關(guān)于超詳細(xì)的Intellij IDEA 看源碼必備技能的文章就介紹到這了,更多相關(guān)intellij idea 源碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java獲取當(dāng)前日期和時(shí)間的二種方法分享

    java獲取當(dāng)前日期和時(shí)間的二種方法分享

    這篇文章主要介紹了java獲取當(dāng)前日期和時(shí)間的二種方法,需要的朋友可以參考下
    2014-03-03
  • Java數(shù)組初始化的五種方式

    Java數(shù)組初始化的五種方式

    數(shù)組是Java中最基礎(chǔ)且常用的數(shù)據(jù)結(jié)構(gòu)之一,其初始化方式多樣且各具特點(diǎn),本文詳細(xì)講解Java數(shù)組初始化的五種方式,分析其適用場(chǎng)景、優(yōu)劣勢(shì)對(duì)比及注意事項(xiàng),幫助避免常見陷阱并提升代碼質(zhì)量,需要的朋友可以參考下
    2025-04-04
  • SpringBoot整合JWT Token的完整步驟

    SpringBoot整合JWT Token的完整步驟

    JSON Web Token是目前最流行的跨域認(rèn)證解決方案,適合前后端分離項(xiàng)目通過Restful API進(jìn)行數(shù)據(jù)交互時(shí)進(jìn)行身份認(rèn)證,這篇文章主要給大家介紹了關(guān)于SpringBoot整合JWT Token的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • 詳解Spring Boot + Mybatis 實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)源

    詳解Spring Boot + Mybatis 實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)源

    這篇文章主要介紹了Spring Boot + Mybatis 實(shí)現(xiàn)動(dòng)態(tài)數(shù)據(jù)源,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • IDEA2023版本創(chuàng)建Spring項(xiàng)目只能勾選17和21卻無法使用Java8的完美解決方案

    IDEA2023版本創(chuàng)建Spring項(xiàng)目只能勾選17和21卻無法使用Java8的完美解決方案

    想創(chuàng)建一個(gè)springboot的項(xiàng)目,本地安裝的是1.8,但是在使用Spring Initializr創(chuàng)建項(xiàng)目時(shí),發(fā)現(xiàn)版本只有17和21,這篇文章主要介紹了IDEA2023版本創(chuàng)建Sping項(xiàng)目只能勾選17和21,卻無法使用Java8的解決方法,需要的朋友可以參考下
    2023-12-12
  • SpringBoot項(xiàng)目改為SpringCloud項(xiàng)目使用nacos作為注冊(cè)中心的方法

    SpringBoot項(xiàng)目改為SpringCloud項(xiàng)目使用nacos作為注冊(cè)中心的方法

    本文主要介紹了SpringBoot項(xiàng)目改為SpringCloud項(xiàng)目使用nacos作為注冊(cè)中心,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • Java實(shí)現(xiàn)斗地主案例

    Java實(shí)現(xiàn)斗地主案例

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)斗地主案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-04-04
  • Java程序執(zhí)行過程及內(nèi)存機(jī)制詳解

    Java程序執(zhí)行過程及內(nèi)存機(jī)制詳解

    本講將介紹Java代碼是如何一步步運(yùn)行起來的,還會(huì)介紹Java程序所占用的內(nèi)存是被如何管理的:堆、棧和方法區(qū)都各自負(fù)責(zé)存儲(chǔ)哪些內(nèi)容,感興趣的朋友跟隨小編一起看看吧
    2020-12-12
  • MyBatis?Xml映射文件之字符串替換方式

    MyBatis?Xml映射文件之字符串替換方式

    這篇文章主要介紹了MyBatis?Xml映射文件之字符串替換方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • Java報(bào)NoClassDefFoundError異常的原因及解決

    Java報(bào)NoClassDefFoundError異常的原因及解決

    在 Java 開發(fā)過程中, java.lang.NoClassDefFoundError 是一個(gè)令人頭疼的運(yùn)行時(shí)錯(cuò)誤,本文將深入探討這一問題的原因和常見場(chǎng)景,并提供實(shí)用的解決方法,希望對(duì)大家有所幫助
    2025-03-03

最新評(píng)論

滕州市| 伊通| 鄂伦春自治旗| 壤塘县| 武山县| 莎车县| 英山县| 体育| 四会市| 介休市| 吴江市| 阳江市| 汉阴县| 垣曲县| 扎鲁特旗| 黄龙县| 务川| 镇巴县| 贵溪市| 鱼台县| 仪征市| 焉耆| 荣成市| 友谊县| 武清区| 柳江县| 太和县| 尼木县| 嫩江县| 德化县| 珠海市| 循化| 巩留县| 商洛市| 鲁甸县| 逊克县| 婺源县| 西安市| 清水县| 彭州市| 西畴县|