java插入代碼塊

來源:互聯網
上載者:User

標籤:就會   import   south   window   pac   cal   sig   驗證   一段   

  • 粘貼1:

當代碼寫到一定程度之後,就會發現很多代碼都被重複地敲了N多遍,甚至毫不誇張地說:閉著眼睛都能敲出來。大量地敲這些重複地代碼,除了鍛煉敲鍵盤的速度,基本上沒有其他益處,但是長期下來會浪費很多時間,降低了軟體開發的效率。例如:為了在程式執行過程中輸出logger資訊,需要在每個class中都添加這麼一段代碼:

 

[java] view plain copy 
  1. import org.slf4j.Logger;  
  2. import org.slf4j.LoggerFactory;  
  3.   
  4. public class XXXClass {  
  5.     /** 
  6.      * Logging mechanism. 
  7.      */  
  8.     private static Logger logger = LoggerFactory.getLogger(XXXClass.class);  
  9.       
  10. }  

        這段代碼在不同class檔案中唯一不同的就是class的名稱:XXXClass。一般的人可能會一個字母一個字母地敲一遍;懶一點的人會Ctrl + C和Ctrl + V,然後把XXXClass改一下;聰明人通過幾個字母加上一個快速鍵就可以搞定。本文就以上面的logger為例,介紹聰明人使用Java Code Template實現的一種更方便快捷的方式。

 

1. Template設定

        Eclipse工具列上選擇Window -> Preferences -> Java -> Editor -> Templates,進入如下介面:

        列表中是Eclipse內建的Code Template,最後一欄是“on”的表示有效,沒有的表示無效。如果要使內建的Code Template生效,可以選擇需要的Code Template,點擊“Edit...”,在開啟的Edit Template對話方塊中,選擇“Automatically insert”複選框,點擊“OK”儲存設定就行了。使用這些有效內建Code Template的方法,與後面示範的logger的使用方法一樣。

        點擊“New...”可以建立一個新的模板,Template的詳細設定如下:

        在需要聲明logger的地方,輸入模板名稱logger,然後按Ctrl + Space快速鍵,顯示模板logger的提示框如所示:

        選擇需要添加的模板logger,則模板中的代碼會被自動添加,包括import的packages,注釋以及logger聲明。

2. Ctrl + Space失效

        在有些情況下,按了Ctrl + Space快速鍵之後,沒有反應,也不顯示提示框。可能存在兩種情況:

 

  • Case 1:沒有設定Content Assist快速鍵

 

        Eclipse工具列上選擇Window -> Preferences -> General -> Keys,進入如下快速鍵設定介面:

        在編輯框中輸入“content assist”,就會自動搜尋到“Content Assist”命令,選擇它之後,在下面的“Binding”編輯框中輸入“Ctrl+Space”,或者直接按Ctrl + Space快速鍵,然後點擊“OK”。

 

  • Case 2:Ctrl + Space快速鍵衝突

 

        如果Ctrl + Space已經設定為Content Assist快速鍵,但是還是沒有效果,可能的原因是Eclipse的Ctrl + Space快速鍵與Windows系統中IME切換的快速鍵衝突。將IME切換的快速鍵修改成其他,如所示:

3. Ctrl + Space提示框中沒有模板

        如果按了Ctrl + Space之後,提示框中卻沒有顯示模板logger,如所示:

        這是因為內容提示(Content Assist)中沒有選擇模板提示(Template Proposals)。Eclipse工具列上選擇Window -> Preferences -> Java -> Editor -> Content Assist -> Advanced,可以進行如下設定:

        選擇兩個方框中“Template Proposals”前面的複選框。如果下面方框中的“Template Proposals”不是第一個,可以選擇它,然後點擊“Up”按鈕直到它處於第一的位置,這樣每次提示框中第一個就是需要的Code Template。

  • 粘貼2:

某天在調試代碼的時候,雖然是android的project還是習慣的輸入syso,然後在ALT+/一下。旁邊的同事就問了一下,這個log列印輸出的tag是什麼。接著又問了為什麼syso能夠智能聯想出這個。第一個問題很好回答,不過對於第二個問題還真答不上來。大學裡面第一次見某個學長使用這個技能之後,就默默的記住了,也沒有多想是什麼回事。這兩天留意了一下,原來是類似java代碼模版的一個東東。在一想為什麼不自己定義android的聯想詞呢。。。
        步驟一:開啟preference,搜尋editor,選擇java的editor,這個時候找到 sysout就可以看到它的定義了

        
        步驟二:這次我們自訂android的log列印,選擇建立,輸入的字串,注意中間那段類似Regex的是模仿sysout的,想來應該是游標移動到這裡的意思

         
        步驟三:驗證一下,輸入loe,按住alt+/,自動產生了如下所示的代碼,並且游標還在那裡

        
        很快捷有木有,再也不用調試時候輸出一句log弄半天了,而且還帶有調用棧的功能哦。

 

  • 我的實踐:

 如下代碼,

${:import(java.util.Scanner)}可以在開頭匯入包
"${word_selection}${}"可以定位游標。
 
${:import(java.util.Scanner)}Scanner scan=new Scanner(System.in);//generate input fluSystem.out.print("${word_selection}${}");//input reminder=scan.nextInt();//assignmentscan.close();

 

也可以不加開頭一行,直接在開頭處按Ctrl+Shift+O 就可以匯入缺失的包。

 

java插入代碼塊

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.