<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 20  文章 - 57  trackbacks - 0
    <2010年11月>
    31123456
    78910111213
    14151617181920
    21222324252627
    2829301234
    567891011

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    51CTO

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    經過一個多月的Java學習,我們慢慢深入了解了Java中的一些比較高級的方法!但這些方法在你調試的時候一定要慎重!!不要等待失去了整個硬盤,才后悔莫及!!! 如果你在編程的時候多長個心眼,這些小的錯誤是可以避免的!!!


    下面我們來看一下一個讓人很崩潰的錯誤,這個錯誤讓我感到不可思議!!代碼如下:

    import java.io.File;

    public class KillBackServer {
     
     public static void main(String[] args){
      File f = new File("C:\\");
      fun(f);
     }
     
    //定義一個靜態函數,用來實現對一盤文件的遍歷
     public static void fun(File f)
        {
       if(f.isDirectory())
        {
          File file[] = f.listFiles();
          try
          {
            for(int i = 0 ; i <file.length ; i++)
            {
                 fun(file[i]);
            }
          }
                 catch(Exception e){}
        }
       else
       {
            if("我是病毒.exe".equals(f.getName()))                                           
                   System.out.println(f);
                   //僅僅當程序找到"我是病毒.exe"的 時候才執行這一句代碼                            
                   //f.delete();                                                   
                   System.out.println("該病毒已被查殺");}  
                   System.out.println(f.getPath() + "***********************");                    
        }
     
     }

    }
     

    大家一定要注意紅色字體的代碼!!!我之所以注釋了,就是怕直接復制我的代碼,然后運行…… 
    如果這樣后果你是知道的……


     本來這段代碼是用來掃描C盤,找到"我是病毒.exe"文件,并把它刪除,判斷一個文件名,用的是equals這是對的!!!
    錯就錯在:if()判斷,大家都明白了吧!
    希望大家以后不要因為犯了這個低級錯誤,而把自己的硬盤給了格了= = |||

    其實,有很多方法可以避免這種錯誤!!!比如,你可以在f.delete(); 后面加上一句打印語句,這樣的話,在你測試的時候就會發現,原來if語句后面少一個大括號…… 


    這個錯誤寫出來僅僅為了提醒大家規范的重要性!!!




     


    posted on 2010-11-17 21:29 tovep 閱讀(2672) 評論(16)  編輯  收藏

    FeedBack:
    # re: Java_一失足成千古恨 2010-11-17 21:55 來了
    無語  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-17 23:21 blackbat
    編碼格式規范就可以避免這個問題啊
    if(){
    ...
    }
    加上括弧就知道  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 00:37 Tovep
    @來了
    是啊!這個錯誤真的很讓人無語……  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 00:39 Tovep
    @blackbat
    正如我們老師說的:規范比能力還要重要,現在終于明白了……  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 08:17 xhiyu
    進到第PE系統,恢復刪除的數據。之前的數據一般都可以找回來。  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 09:27 Tovep
    @xhiyu
    在PE中可以用easyrecoveryprofessional嗎?  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 10:04 xiaoxin5230
    不管什么時候都要加空格,java編程規范里面有的  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 16:55 Tovep
    @xiaoxin5230
    在Java中加入空格的作用是讓程序更有層次!!!
    如果程序的層次感很好的話,如果代碼有錯誤,找錯誤也比較容易的……、
    總之,好處很多的
      回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 17:40 isaac
    這是一個弱智的錯誤。
    根本原因有二
    1.不遵守使用{}的規范。
    2.代碼格式化不好。  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-18 17:57 Lu Han
    怎么會犯這樣的錯誤?
    你的弱碼告訴了我,沒有什么不可能!  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-19 10:11 Tovep
    @isaac
    不遵守{}規范,這個我知道!!
    代碼格式化不好——是什么意思啊?
    是不是一般不要寫一些格式化的代碼!!!  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-19 10:14 Tovep
    @Lu Han
    我同學讓我看看他的代碼,怎么回事?怎么一運行電腦就沒系統了!我才發現這個低級錯誤!!!不過我覺得好多事都敗在細節上!!所以寫出來提醒大家一下!!  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-19 23:25 大山
    用eclipse,自動格式化代碼就能解決這個問題  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-20 18:12 Tovep
    @大山
    其實,我覺得在編代碼的時候遵守一定規則要比自動格式化代碼好!!!
    Eclipse 的自動格式化太形式話!!!  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-25 19:25 WJJ
    說實話,一開始我看這程序還真沒看出有啥問題, 不過一說{} 我發現,確實 是少一對 哈哈, 太崩潰了。  回復  更多評論
      
    # re: Java_一失足成千古恨 2010-11-30 15:45 rrr
    catch(Exception e){}
    這才是最要命的,要么throw出去,要么輸出異常信息

    刪除磁盤這種比較重量級的操作最好是先模擬一遍,確認無誤再真正執行動作


      回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主頁 主站蜘蛛池模板: 久久精品国产大片免费观看| jzzjzz免费观看大片免费| 1000部羞羞禁止免费观看视频| 中文字幕亚洲无线码| 一级做a爰片久久毛片免费看| 国产乱弄免费视频| 精品久久久久亚洲| 亚洲成?v人片天堂网无码| 黄色a三级三级三级免费看| 免费不卡中文字幕在线| 一级女人18片毛片免费视频| 中文字幕日韩亚洲| 久久久久久久99精品免费观看| 亚洲va无码手机在线电影| 日韩在线不卡免费视频一区| 亚洲精品人成在线观看| 久久国产免费一区二区三区| 亚洲最新黄色网址| 永久免费毛片手机版在线看| 人妻仑刮八A级毛片免费看| 国产亚洲精久久久久久无码77777| 免费无码又爽又刺激网站直播| 亚洲国产精品国自产电影| 在线看片v免费观看视频777| 亚洲欧洲精品成人久久曰| 亚洲精品99久久久久中文字幕| 在线看片免费人成视频久网下载| 少妇中文字幕乱码亚洲影视| 国产啪精品视频网免费| 黄色网址免费在线| 亚洲福利视频一区| 成人免费无码大片a毛片| 亚洲免费无码在线| 亚洲第一精品电影网| 国产免费AV片无码永久免费| 成av免费大片黄在线观看| 亚洲大尺码专区影院| 亚洲国产aⅴ综合网| 麻豆高清免费国产一区| 一级做a爰片久久毛片免费陪| 亚洲视频在线观看免费|