黄色网址大全免费-黄色网址你懂得-黄色网址你懂的-黄色网址有那些-免费超爽视频-免费大片黄国产在线观看

IntelliJ IDEA教程
IntelliJ IDEA的一般準(zhǔn)則
IntelliJ IDEA編輯器
IntelliJ IDEA高級(jí)編輯程序
IDEA使用Subversion集成
IntelliJ IDEA提取重構(gòu)
IntelliJ IDEA插件

IntelliJ IDEA方法重構(gòu)

調(diào)用提取方法重構(gòu)時(shí),IntelliJ IDEA 分析選定的代碼塊并檢測(cè)作為所選代碼片段的輸入的變量以及為其輸出的變量。

如果只有一個(gè)輸出變量,則它將其用作提取方法的返回值。如果有多個(gè)輸出變量,則可能不應(yīng)用提取方法重構(gòu),并出現(xiàn)錯(cuò)誤消息。

在這種情況下,允許提取方法工作有幾種變通辦法。例如,您可能會(huì)引入一個(gè)包含所有輸出值的特殊數(shù)據(jù)類。

提取方法重構(gòu)具有以下限制:

⒈ 重構(gòu)在自動(dòng)模式下不使用多個(gè)輸出值。在應(yīng)用重構(gòu)之前,您必須更改您的代碼。

⒉ 重構(gòu)對(duì)于有條件地從包含方法返回的代碼片段不起作用,并且不放在它的末尾。

Java 示例

重構(gòu)前

重構(gòu)后

public void method() {
   int a=1;
   int b=2;
   int c=a+b;
   int d=a+c;

 

public void method() {
    int a=1;
    int b=2;
    int c=add(a,b);
    int d=add(a,c);
}
    ...
private int add(int a, int b) {
    return a+b;
}

 

public ArrayList method() {
   String[] strings = {"a","b","c"};
   ArrayList list = new ArrayList();
   for (int i=0; i < strings.length; i++)
       {list.add(strings[i]);}
   return list;

 

public ArrayList method() {
    String[] strings = {"a","ab","abc"};
    ArrayList list=add(strings);
    return list;
}
private ArrayList add(String[] strings) {
    ArrayList list = new ArrayList();
    for (int i=0; i < strings.length; i++)
        {list.add(strings[i]);}
    return list;
}

 

提取方法重構(gòu)

若要提取方法,請(qǐng)按照下列步驟操作:

⒈ 在編輯器中,選擇要轉(zhuǎn)換成方法或函數(shù)的代碼塊。構(gòu)成方法的代碼片段不一定必須是一組語(yǔ)句。它也可能是代碼中某處使用的表達(dá)式。

⒉ 在主菜單或選擇的上下文菜單上,選擇:重構(gòu)| 提取| 方法或者按 Ctrl+Alt+M。

⒊ 在打開的 "提取方法" 對(duì)話框中,指定新函數(shù)的名稱。

⒋ 要?jiǎng)?chuàng)建一個(gè)靜態(tài)方法,請(qǐng)選中 "聲明靜態(tài)" 復(fù)選框。

⒌ 在 "參數(shù)" 區(qū)域中,請(qǐng)執(zhí)行以下操作:

① 通過選擇/清除相應(yīng)的復(fù)選框來(lái)指定要作為方法參數(shù)傳遞的變量。

如果某個(gè)參數(shù)被禁用,則將在提取的方法中創(chuàng)建一個(gè)具有初始值的相應(yīng)類型的局部變量,以便您必須手動(dòng)輸入適當(dāng)值的初始值設(shè)定項(xiàng)。

② 通過雙擊相應(yīng)的參數(shù)行并輸入新名稱來(lái)重命名所需的參數(shù)。

⒍ 在可見性區(qū)域中定義方法的可見性范圍。

⒎ 在 "簽名預(yù)覽" 窗格中檢查結(jié)果,然后單擊 "確定" 創(chuàng)建方法。選定的代碼片段將被方法調(diào)用替換。此外,IntelliJ IDEA 將建議替換在當(dāng)前類中找到的任何類似的代碼片段。

處理重復(fù)項(xiàng)

IntelliJ IDEA 檢測(cè)到可能接受不同值作為參數(shù)的重復(fù)代碼片段,并以差異查看器的格式顯示以下建議:

如果單擊 "接受簽名更改" 按鈕,所有遇到的重復(fù)項(xiàng)都將突出顯示,IntelliJ IDEA 將要求您進(jìn)行確認(rèn):

最后,在用方法調(diào)用替換所需的重復(fù)項(xiàng)之后,您將得到以下代碼:

您也可以從重復(fù)的代碼段中提取方法,IntelliJ IDEA 在重復(fù)分析過程中發(fā)現(xiàn)的。遇到的重復(fù)項(xiàng)顯示在 "重復(fù)" 工具窗口中,您可以在其中嘗試用方法調(diào)用替換它們。

全部教程
主站蜘蛛池模板: 特黄aaaaaaaaa及毛片 | 在线观看视频www | 青草视频在线 | 亚洲精品区| 日本成日本片人免费 | 久久久精品视频直接观看 | 亚洲国产精品毛片∧v卡在线 | 黄色三级视频在线 | 一级免费大片 | 成年人网站免费在线观看 | a毛片免费全部在线播放毛 a毛片免费全部播放毛 | 成年人在线观看免费视频 | 夜夜爱夜夜操 | 黄网站免费在线观看 | 亚洲日本一区二区三区在线 | 天天干免费视频 | 98在线视频噜噜噜国产 | 日韩欧美在线一级一中文字暮 | 色偷偷91久久综合噜噜噜噜 | 一级做a爱免费观看视频 | 国产免费高清在线精品一区 | 看片地址 | 欧美黄色片在线播放 | 亚洲第一a亚洲 | 在线视频日韩 | 午夜私人影院在线观看 视频 | 成人欧美一区在线视频在线观看 | 巨胸喷奶水www久久久免费观看 | 亚洲日本va中文字幕线 | 国产日韩不卡免费精品视频 | 一级毛片毛片毛毛片毛片 | 两性色午夜视频自由成熟的性 | 日韩一区二区三区四区五区 | 一级做a爰片性色毛片武则天五则 | 国产人妖性一区二区 | 天天草视频 | 在线播放色| 亚洲精品日本 | 中文在线免费视频 | 天天射天天干天天舔 | 国产日韩综合 |