<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      checkstyle檢查配置文檔

      本文轉載自:http://www.blogjava.net/amigoxie/archive/2014/05/31/414287.html  


      其它部分請參考原文

      3.4 checkstyle常見提示速查

               Checkstyle常見錯誤和警告提示見下表所示:

      錯誤提示

      錯誤說明

      missing a javadoc comment

      缺少類注釋

      Line longer than X characters

      行長度超過X個字符(包括空格)

      Return count is X(max allowed 3)

      一個方法內的返回數量是X(最大值只能為3)

      Nested if-else depth is X(max allowed is 3)

      最大的if-else嵌套層數為X(最大只能為3)

      Array brackets at illegal position

      數組的方括號“[]”的位置不正確(檢查數組類型的定義是String[] args,而不是String args[]

      Line matchs the illegal pattern 'System\.out\.println'

      本行包含System.out.println語句

      ctor def modifier at indentation level 8 not at corrent indentation 4

      縮進不正確,一般是因為沒有在Eclipse中使用4個空格代替tab鍵引起。

      'static' modifier out of order with the JLS suggestions

      static修飾符沒有按照JLS的建議來排序(eg.寫成public final static...應該改成public static final)

      Name 'X' must match pattern '^[A-Z][A-Z0-9][_A-Z0-9+]$'(正則表達式)

      名稱不符合正則表達式'^[A-Z][A-Z0-9][_A-Z0-9+]$'(即為大寫字母,數字、下劃線等)。

      一般在靜態變量沒有大寫時提示,包名不是全部消息時提示,類名不是大寫開頭時提示,方法名不是小寫開頭時提示

      Variable access definition in wrong order

      變量定義順序不正確(例如在類成員變量定義時,將private類型的變量定義在public類型的變量之前)

      Static variable definition in wrong order

      靜態變量定義順序不正確(例如在構造函數之后定義靜態變量)

      Instance variable definition in wrong order

      成員變量定義順序不正確(例如在構造函數之后定義成員變量)

      X is a magic number

      X是一個魔術數字(01、2的數字)

      if construct must use '{}'

      if結構必須使用'{}'

      Got an exception - Unexpected character 0xfffd in identifier

      因為沒有設置checkstyle配置文件的charsetUTF-8,而類文件使用UTF-8編碼,并且含有中文

      { should be on the previous line

      { 應該位于前一行

      Methods is missing a javadoc comment

      方法前面缺少javadoc注釋

      Expected @throws tag for Exception

      在注釋中希望有@throws的說明

      . Is preceeded with whitespace

      . 前面不能有空格

      . Is followed by whitespace

      . 后面不能有空格

      = is not preceeded with whitespace=

      前面缺少空格

      = is not followed with whitespace

      = 后面缺少空格

      } should be on the same line

      } 應該與下條語句位于同一行

      Unused @param tag for unused

      沒有參數“unused”,不需注釋

      Variable X missing javadoc

      變量“CA”缺少javadoc注釋

      Line contains a tab character

      行含有”tab 字符

      Redundant Public modifier

      冗余的“public modifier

      final modifier out of order with the JSL suggestion

      final修飾符的順序錯誤

      Avoid using the .* form of import

      Import格式避免使用“.*

      Redundant import from the same package

      從同一個包中Import內容

      Unused import-X Import

      importX類沒有被使用

      Duplicate import to line X

      重復Import同一個內容

      Import from illegal package

      從非法包中 Import內容

      while construct must use {}

      while 語句缺少“{}

      Variable X must be private and have accessor method

      變量“X”應該是private的,并且有調用它的方法

      Variable X must match pattern ^[a-z][a-zA-Z0-9]*$

      變量“X”不符合命名規則“^[a-z][a-zA-Z0-9]*$

      ( is followed by whitespace

      ( 后面不能有空格

      ) is proceeded by whitespace

      ) 前面不能有空格

      4、附錄

      4.1 eclipse_checkstyle.xml文件內容

               Checkstyle配置文件eclipse_checkstyle如下所示:

      <? xml version="1.0" ?>
      <! DOCTYPE module PUBLIC
                "-//Puppy Crawl//DTD Check Configuration 1.2//EN"
                "http://www.puppycrawl.com/dtds/configuration_1_2.dtd"
      >

      < module  name ="Checker" >
               
      < property  name ="severity"  value ="warning" />
          
      < module  name ="StrictDuplicateCode" >
              
      < property  name ="charset"  value ="utf-8"   />    
          
      </ module >    

          
      < module  name ="TreeWalker" >    
              
      <!--  javadoc的檢查  -->    
              
      <!--  檢查所有的interface和class  -->    
              
      < module  name ="JavadocType"   />    

              
      <!--  命名方面的檢查  -->    
              
      <!--  局部的final變量,包括catch中的參數的檢查  -->    
              
      < module  name ="LocalFinalVariableName"   />    
              
      <!--  局部的非final型的變量,包括catch中的參數的檢查  -->    
              
      < module  name ="LocalVariableName"   />    
              
      <!--  包名的檢查(只允許小寫字母)  -->    
              
      < module  name ="PackageName" >    
                  
      < property  name ="format"  value ="^[a-z]+(\.[a-z][a-z0-9]*)*$"   />    
              
      </ module >    
              
      <!--  僅僅是static型的變量(不包括static final型)的檢查  -->    
              
      < module  name ="StaticVariableName"   />    
              
      <!--  類型(Class或Interface)名的檢查  -->    
              
      < module  name ="TypeName"   />    
              
      <!--  非static型變量的檢查  -->    
              
      < module  name ="MemberName"   />    
              
      <!--  方法名的檢查  -->    
              
      < module  name ="MethodName"   />    
              
      <!--  方法的參數名  -->    
              
      < module  name ="ParameterName "   />    
              
      <!--  常量名的檢查  -->    
              
      < module  name ="ConstantName"   />
              
      <!--  沒用的import檢查,比如:1.沒有被用到2.重復的3.import java.lang的4.import 與該類在同一個package的  -->    
              
      < module  name ="UnusedImports"   />    

              
      <!--  長度方面的檢查  -->    
              
      <!--  文件長度不超過1500行  -->    
              
      < module  name ="FileLength" >    
                  
      < property  name ="max"  value ="1500"   />    
              
      </ module >    
              
      <!--  每行不超過150個字 -->    
              
      < module  name ="LineLength" >    
                  
      < property  name ="max"  value ="150"   />    
              
      </ module >    
              
      <!--  方法不超過150行  -->    
              
      < module  name ="MethodLength" >    
                  
      < property  name ="tokens"  value ="METHOD_DEF"   />    
                  
      < property  name ="max"  value ="150"   />    
              
      </ module >    
              
      <!--  方法的參數個數不超過5個。 并且不對構造方法進行檢查 -->    
              
      < module  name ="ParameterNumber" >    
                  
      < property  name ="max"  value ="5"   />    
                  
      < property  name ="tokens"  value ="METHOD_DEF"   />    
              
      </ module >    

              
      <!--  空格檢查  -->    
              
      <!--  允許方法名后緊跟左邊圓括號"("  -->    
              
      < module  name ="MethodParamPad"   />    
              
      <!--  在類型轉換時,不允許左圓括號右邊有空格,也不允許與右圓括號左邊有空格  -->    
              
      < module  name ="TypecastParenPad"   />

              
      <!--  關鍵字  -->    
              
      <!--    
                  每個關鍵字都有正確的出現順序。比如 public static final XXX 是對一個常量的聲明。如果使用 static 
                  public final 就是錯誤的   
              
      -->    
              
      < module  name ="ModifierOrder"   />    
              
      <!--  多余的關鍵字  -->    
              
      < module  name ="RedundantModifier"   />    

              
      <!--  對區域的檢查  -->    
              
      <!--  不能出現空白區域  -->    
              
      < module  name ="EmptyBlock"   />    
              
      <!--  所有區域都要使用大括號  -->    
              
      < module  name ="NeedBraces"   />
              
      <!--  多余的括號  -->    
              
      < module  name ="AvoidNestedBlocks" >    
                  
      < property  name ="allowInSwitchCase"  value ="true"   />    
              
      </ module >    

              
      <!--  編碼方面的檢查  -->    
              
      <!--  不許出現空語句  -->    
              
      < module  name ="EmptyStatement"   />  
              
      <!--  不允許魔法數  -->    
              
      < module  name ="MagicNumber" >    
                  
      < property  name ="tokens"  value ="NUM_DOUBLE, NUM_INT"   />    
              
      </ module >
              
      <!--  多余的throw  -->    
              
      < module  name ="RedundantThrows"   />  
              
      <!--  String的比較不能用!= 和 ==  -->    
              
      < module  name ="StringLiteralEquality"   />    
              
      <!--  if最多嵌套3層  -->    
              
      < module  name ="NestedIfDepth" >    
                  
      < property  name ="max"  value ="3"   />    
              
      </ module >    
              
      <!--  try最多被嵌套2層  -->    
              
      < module  name ="NestedTryDepth" >    
                  
      < property  name ="max"  value ="2"   />    
              
      </ module >    
              
      <!--  clone方法必須調用了super.clone()  -->    
              
      < module  name ="SuperClone"   />    
              
      <!--  finalize 必須調用了super.finalize()  -->    
              
      < module  name ="SuperFinalize"   />    
              
      <!--  不能catch java.lang.Exception  -->    
              
      < module  name ="IllegalCatch" >    
                  
      < property  name ="illegalClassNames"  value ="java.lang.Exception"   />   
              
      </ module >    
              
      <!--  確保一個類有package聲明  -->    
              
      < module  name ="PackageDeclaration"   />    
              
      <!--  一個方法中最多有3個return  -->    
              
      < module  name ="ReturnCount" >    
                  
      < property  name ="max"  value ="3"   />    
                  
      < property  name ="format"  value ="^$"   />    
              
      </ module >    
              
      <!--    
                  根據 Sun 編碼規范, class 或 interface 中的順序如下: 1.class 聲明。首先是 public,   
                  然后是protected , 然后是 package level (不包括access modifier ) 最后是private .   
                  (多個class放在一個java文件中的情況) 2.變量聲明。 首先是 public, 然后是protected然后是 package 
                  level (不包括access modifier ) 最后是private . (多個class放在一個java文件中的情況)   
                  3.構造函數 4.方法   
              
      -->    
              
      < module  name ="DeclarationOrder"   />  
              
      <!--  同一行不能有多個聲明  -->    
              
      < module  name ="MultipleVariableDeclarations"   />    
              
      <!--  不必要的圓括號  -->    
              
      < module  name ="UnnecessaryParentheses"   />     

              
      <!--  雜項  -->    
              
      <!--  禁止使用System.out.println  -->    
              
      < module  name ="GenericIllegalRegexp" >    
                  
      < property  name ="format"  value ="System\.out\.println"   />    
                  
      < property  name ="ignoreComments"  value ="true"   />
              
      </ module >
              
      <!--  檢查并確保所有的常量中的L都是大寫的。因為小寫的字母l跟數字1太象了  -->    
              
      < module  name ="UpperEll"   />    
              
      <!--  檢查數組類型的定義是String[] args,而不是String args[]  -->    
              
      < module  name ="ArrayTypeStyle"   />
              
      <!--  檢查java代碼的縮進 默認配置:基本縮進 4個空格,新行的大括號:0。新行的case 4個空格  -->    
              
      < module  name ="Indentation"   />    
          
      </ module >  
      </ module >         
      posted @ 2015-07-12 22:04  Java夜未眠  閱讀(146)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 中文字幕国产精品av| 18av千部影片| 欧美裸体xxxx极品| 国产91色综合久久免费| 亚洲综合一区二区三区视频| 亚洲日韩欧美丝袜另类自拍 | 贞丰县| 国产乱码精品一区二区三上| 国产精品夫妇激情啪发布| 97亚洲熟妇自偷自拍另类图片 | 亚洲中文字幕成人综合网| 色偷偷www.8888在线观看| 一本高清码二区三区不卡| 国产精品无码v在线观看| 精品偷拍一区二区三区在| 国产精品普通话国语对白露脸 | 日本熟妇XXXX潮喷视频| 国产精品国产三级国av| 亚洲午夜天堂| 91精品蜜臀国产综合久久| 国产美女高潮流白浆视频| 福利一区二区不卡国产| 精品视频在线观看免费观看| 国产精品久久久久久久久久| 欧美人人妻人人澡人人尤物| 国产成人精品一区二区| 欧美成本人视频免费播放| 国产最新精品系列第三页| 制服丝袜美腿一区二区| 乱熟女高潮一区二区在线| 久久一日本综合色鬼综合色| 忘忧草在线社区www中国中文| 国产伦码精品一区二区| 国产馆在线精品极品粉嫩| 亚洲欧美在线观看品| 亚洲伊人久久大香线蕉| 成人亚欧欧美激情在线观看| 日照市| 亚洲国产精品综合久久20| 国产成人亚洲综合app网站| 四虎库影成人在线播放|