你好,歡迎進(jìn)入江蘇優(yōu)軟數(shù)字科技有限公司官網(wǎng)!
發(fā)布時(shí)間:2023-06-03
瀏覽次數(shù):0
概述
之前寫過一篇介紹IDEA的文章《》,主要是羅列一些你可能沒用過或者用得不多,特別有用的IDEA小技巧。 限于篇幅,只列出了一小部分。 本文將繼續(xù)補(bǔ)充一些IDEA小技巧。
不要輕易自定義快捷鍵
操作比較多,IDEA沒有為我們設(shè)置默認(rèn)的快捷鍵,需要用戶自己定義快捷鍵。 例如:
為了能夠在IDEA中進(jìn)行無鍵盤編程,很多程序員都會自定義快捷鍵,可能需要注意三個(gè)地方。
雖然在IDEA中每個(gè)操作都能看到一個(gè)。 我們可以使用ctrl+shift+a來輸入我們要使用的操作。 比如中提到的。你可以先使用ctrl+shift+a快捷鍵,然后enter回車執(zhí)行你想要的操作。
對于我自己來說,不僅是基本的快捷鍵,ctrl+shift+a是我使用頻率最高的快捷鍵。
小心使用 ctrl+alt+h
Ctrl+alt+h特別好用,但是有一個(gè)坑,當(dāng)一個(gè)方法在同一個(gè)方法中被多次調(diào)用時(shí),例如下面的代碼:
public?class?TestService?{
? ?public?void?test1()?{
? ? ? ?System.out.println("aa");
? ?}
? ?public?void?test2()?{
? ? ? ?test1();
? ?}
? ?public?void?test3()?{
? ? ? ?test1();
? ? ? ?//無數(shù)業(yè)務(wù)操作后,再次電影test1()方法
? ? ? ?test1();
? ?}
}
如果我們想知道在哪里調(diào)用了test1()方法,使用ctrl+alt+h是無法正確列出的。 因?yàn)?ctrl+alt+h 只能告訴你調(diào)用級別。
ctrl+alt+h 只會在一個(gè)隱藏的地方告訴你 test3() 方法調(diào)用了 test1() 方法兩次。 這樣一來就很容易欺騙開發(fā)者,因?yàn)橐话闳丝赡懿惶⒁馀赃叺恼{(diào)用次數(shù),所以改了bug就以為什么都改了?
如果要準(zhǔn)確列出調(diào)用test1()方法的位置,需要使用快捷鍵alt+f7。
尤其是當(dāng)我們閱讀非常復(fù)雜的業(yè)務(wù)代碼時(shí),使用alt+f7是非常合適的。
其實(shí)alt+f7也可以作用于變量,列出某個(gè)類中使用該變量的地方。
ctrl+alt+h 是最常被問到的兩個(gè)問題
經(jīng)常有朋友和網(wǎng)友問我。
如何使用ctrl+alt+h跳轉(zhuǎn)到源碼,如何返回到ctrl+alt+h對應(yīng)的視圖。
切換回源代碼
雖然很簡單intellij idea 快捷鍵,但是當(dāng)你使用ctrl+alt+h時(shí),使用向上或向下箭頭選擇一個(gè)調(diào)用,然后按f4就可以跳轉(zhuǎn)到源代碼。
如何返回到 ctrl+alt+h 視圖
這個(gè)問題已經(jīng)被問過數(shù)百次了。 雖然很簡單,但是當(dāng)你用f4跳轉(zhuǎn)到源碼的時(shí)候,可以直接用alt+8跳回去。 然后就可以繼續(xù)看下一個(gè)調(diào)用了。
如果你的項(xiàng)目太多了,上面的http或者太多了。 如何快速找到這條路? 這時(shí)候ctrl+alt+shift+n就可以派上用場了。
比如你依稀記得三個(gè)相關(guān)的都有一個(gè)bill url路徑,所以用ctrl+alt+shift+n后,直接輸入/bill就可以了。
當(dāng)你千方百計(jì)尋找方法時(shí),這一招可以大大提高效率。
了解項(xiàng)目關(guān)鍵業(yè)務(wù)流程方法的神器——
在一些初創(chuàng)公司,很多核心模塊都放在同一個(gè)項(xiàng)目中。 比如訂單相關(guān)的,支付相關(guān)的,商品相關(guān)的。 這個(gè)時(shí)候,你可以把那些關(guān)鍵的業(yè)務(wù)方法放在一個(gè)統(tǒng)一的地方,方便你使用。
那么如何使用快捷鍵來實(shí)現(xiàn)之前的效果呢?
public?class?TestService?{
? ?public?void?test1()?{
? ? ? ?System.out.println("aa");
? ?}
? ?public?void?test2()?{
? ? ? ?test1();
? ?}
? ?public?void?test3()?{
? ? ? ?test1();
? ? ? ?test1();
? ?}
}
比如我和前面的方法一樣,想把test1()方法放在里面,可以通過下面的操作來完成:
1、使用ctrl+f12列出該類的所有方法,然后輸入test1將光標(biāo)定位到test1上;
2.按f11向其添加test1();
3.按shift+f11彈出列表;
4. 按ctrl+enter 更改名稱。
只留下一個(gè)標(biāo)簽
這是我目前使用的,即整個(gè)項(xiàng)目上只有一個(gè)代碼選項(xiàng)卡。 也就是說,無論你打開多少個(gè)文件,它們都會顯示在同一個(gè)選項(xiàng)卡上。 如果是這樣設(shè)置的話,可能有網(wǎng)友會問,我想看看我最近有什么操作,怎么看呢? 可以直接ctrl+e顯示最近操作過的文件。
我建議只保留一個(gè)代碼選項(xiàng)卡,這非常簡單。 如果每次打開一個(gè)文件,都是一個(gè)新的標(biāo)簽頁,很快就會亂七八糟,還得關(guān)閉一些標(biāo)簽頁。
可以通過下面的方法設(shè)置用tab顯示代碼。 按ctrl+shif+a,然后輸入Tabs,回車進(jìn)入編輯頁面。
在那之后,選擇無
如何閱讀又長又臭的代碼
由于歷史的原因,項(xiàng)目中總會有那段看不懂、又長又臭的業(yè)務(wù)代碼。 閱讀這些代碼簡直就是一種折磨。 而在IDEA中,只要使用5個(gè)小方法,就可以大大提高閱讀質(zhì)量和速度。
創(chuàng)建任意代碼折疊塊
和之前的for循環(huán)一樣,想直接折疊。 當(dāng)代碼過長時(shí),使用折疊塊可以幫助你快速理清代碼的主要上下文。
您可以將光標(biāo)定位在 for 循環(huán)的左大括號中,然后使用 ctrl+shift+。
如果你想讓這個(gè)折疊快速消失,只需使用 ctrl 加一個(gè) +。
大括號匹配
這也很有用,因?yàn)榇a太長了,一個(gè)for循環(huán)可能已經(jīng)占滿了整個(gè)屏幕。 這時(shí)候要找到某個(gè)大括號對應(yīng)的對方就很費(fèi)力了。 您可以將光標(biāo)定位在大括號的一側(cè)intellij idea 快捷鍵,然后使用 ctrl+] 或 ctrl+[ 來回移動(dòng)。
ctrl+shift+f7 結(jié)合 f3
Ctrl+shift+f7 可以高亮一個(gè)變量,但是在連接鍵盤的情況下,這個(gè)高亮不會消失(這個(gè)很重要)。 然后使用f3查找下一個(gè)使用該變量的地方。
使用 ctrl+shift+i
這也是閱讀長代碼的法寶。 當(dāng)你閱讀一段很長的代碼,突然想看代碼中某個(gè)類的定義時(shí),可以直接使用ctrl+shift+i在當(dāng)前類中向下彈出另一個(gè)窗口。 例如:
在這個(gè)代碼塊中,你想看到類的定義,所以把光標(biāo)放在上面,然后直接使用ctrl+shift+i,就會彈出如下窗口。
按 esc 關(guān)閉此窗口。
使用 alt+f7
這個(gè)我已經(jīng)在里面介紹過了。 您可以列出使用變量的位置。
結(jié)合這5種方法,相信可以大大提升長代碼的閱讀效率。
跳轉(zhuǎn)到父套接字
比如我們經(jīng)常定義一個(gè),然后用一個(gè)類來實(shí)現(xiàn)上面的。
public?interface?UserService?{
? ?void?test1();
}
public?class?UserServiceImpl?implements?UserService?{
? ?@Override
? ?public?void?test1()?{
? ?}
}
那么在test1()方法中,如何跳轉(zhuǎn)到test1(),直接ctrl+u就可以了。
后悔藥
如果改了部分代碼突然發(fā)現(xiàn)不合適,用ctrl+z回滾。 突然覺得昨晚做的改動(dòng)還可以。 然后就可以再次使用ctr+shift+z恢復(fù)剛才改的內(nèi)容了。
最快的換膚方式
可以直接用ctrl,后面跟一個(gè)`,馬上會彈出如下界面:
選擇Color,然后回車,會彈出更換皮膚的窗口。
原文:blog.csdn.net////
往期干貨推薦
1.
2.
3.
4.
5.
Java技術(shù)棧·長按關(guān)注
如有侵權(quán)請聯(lián)系刪除!
Copyright ? 2023 江蘇優(yōu)軟數(shù)字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服務(wù)提供商
13262879759
微信二維碼