北方站长站
客服热线:0632-5117766

Good Java Style: Part 2

[2007-11-16 00:00:00] 作者:Northz.com 来源:北方站长站

Tags:import // classes ... Java RotPad or the other private

  

, I introduced my case for writing Java code using good habits, explained why we should care about the way our code looks, and illustrated some general elements of good Java style. In this part, I illustrate more elements of good style and bring my case to a conclusion. FfB北方站长站
Source FilesFfB北方站长站
There are many ways that a Java source file can be organized. Here is one that works well: FfB北方站长站
FfB北方站长站
File header comment (optional). FfB北方站长站
Package declaration. FfB北方站长站
Blank line or other separator. FfB北方站长站
Import statements. FfB北方站长站
Blank line or other separator. FfB北方站长站
Class(es). FfB北方站长站
Example 1. Bad File Organization. FfB北方站长站
FfB北方站长站
   package org.rotpad;FfB北方站长站
   import java.awt.*;FfB北方站长站
   import javax.swing.event.*;FfB北方站长站
   import org.javacogs.*;FfB北方站长站
   import javax.swing.*;FfB北方站长站
   import java.awt.event.*;FfB北方站长站
   class Foo {FfB北方站长站
    ...FfB北方站长站
   }FfB北方站长站
   public class RotPad extends JFrame {FfB北方站长站
    ...FfB北方站长站
   }FfB北方站长站
FfB北方站长站
Example 2. Good File Organization. FfB北方站长站
FfB北方站长站
   package org.rotpad;FfB北方站长站
   FfB北方站长站
   // Java classesFfB北方站长站
   import java.awt.*;FfB北方站长站
   import java.awt.event.*;FfB北方站长站
   import javax.swing.*;FfB北方站长站
   import javax.swing.event.*;FfB北方站长站
   FfB北方站长站
   // JavaCogs classesFfB北方站长站
   import org.javacogs.*;FfB北方站长站
   FfB北方站长站
   /**FfB北方站长站
    * RotPad is a simple GUI application for performing rotation ciphers on plain FfB北方站长站
    * text.FfB北方站长站
    *FfB北方站长站
    * @author Thornton RoseFfB北方站长站
    * @version 1.0FfB北方站长站
    */FfB北方站长站
   public class RotPad extends JFrame {FfB北方站长站
      ...FfB北方站长站
   }FfB北方站长站
   FfB北方站长站
   //-----------------------------------------------------------------------------FfB北方站长站
   FfB北方站长站
   /**FfB北方站长站
    * Foo is ...FfB北方站长站
    *FfB北方站长站
    * @author Thornton RoseFfB北方站长站
    * @version 1.0FfB北方站长站
    */FfB北方站长站
   class Foo {FfB北方站长站
      ...FfB北方站长站
   }FfB北方站长站
FfB北方站长站
Import StatementsFfB北方站长站
A complex class can have a large number of imports, which can get unruly, especially if you prefer to import individual classes instead of whole packages (e.g., java.awt.*). To get a handle on imports, organize them as follows: FfB北方站长站
FfB北方站长站
Java standard classes (java.*). FfB北方站长站
Java extension classes (javax.*). FfB北方站长站
Third-party classes. FfB北方站长站
Application classes. FfB北方站长站
Be sure to comment the third-party and application classes, particularly those that do not have obvious names. Use end-of-line comments, or put a comment at the beginning of the section. Also, if you really want to be a perfectionist, order each group of imports alphabetically. FfB北方站长站
Example 3. Bad Import Style.FfB北方站长站
FfB北方站长站
   import java.util.*;FfB北方站长站
   import javax.swing.*;FfB北方站长站
   import java.awt.event*;FfB北方站长站
   import com.gensym.com.*;FfB北方站长站
   import javax.swing.table.*;FfB北方站长站
   import com.pv.jfcx.*;FfB北方站长站
   import java.awt.*;FfB北方站长站
   import com.melthorn.util.*;FfB北方站长站
FfB北方站长站
Example 4a. Good Import Style. FfB北方站长站
FfB北方站长站
   import java.awt.*;FfB北方站长站
   import java.awt.event*;FfB北方站长站
   import java.util.*;FfB北方站长站
   import javax.swing.table.*;FfB北方站长站
   import com.gensym.com.*;     // BeanXporterFfB北方站长站
   import com.pv.jfcx.*;        // ProtoViewFfB北方站长站
   import com.melthorn.util.*;  // UtilitiesFfB北方站长站
Example 4b. Good Import Style. FfB北方站长站
FfB北方站长站
   FfB北方站长站
   // Java classesFfB北方站长站
   import java.awt.*;FfB北方站长站
   import java.awt.event*;FfB北方站长站
   import java.util.*;FfB北方站长站
   import javax.swing.table.*;FfB北方站长站
                           FfB北方站长站
   // BeanXporterFfB北方站长站
   import com.gensym.com.*;     FfB北方站长站
                           FfB北方站长站
   // ProtoView GUI componentsFfB北方站长站
   import com.pv.jfcx.*;FfB北方站长站
                           FfB北方站长站
   // Application classesFfB北方站长站
   import com.melthorn.util.*;FfB北方站长站
FfB北方站长站
ClassesFfB北方站长站
Organizing a Java source file without organizing the classes in it would not gain you much in the way of proper style. Here's how to organize the classes in your source files: FfB北方站长站
FfB北方站长站
Javadoc comment or other header comment. FfB北方站长站
Class declaration. FfB北方站长站
Field declarations. FfB北方站长站
Blank line or other separator. FfB北方站长站
Constructors. FfB北方站长站
Blank line or other separator. FfB北方站长站
Methods, except main()FfB北方站长站
FfB北方站长站
, grouped logically. FfB北方站长站
Blank line or other separator. FfB北方站长站
Inner classes. FfB北方站长站
Blank line or other separator. FfB北方站长站
main()FfB北方站长站
FfB北方站长站
. FfB北方站长站
Example 5. Bad Class Style. FfB北方站长站
FfB北方站长站
   // RotPad -- GUI app. for ROT cipheringFfB北方站长站
   public class RotPad extends JFrame {FfB北方站长站
   private static final String TRANSFORM_ROT13    = "ROT13";FfB北方站长站
   private static final String TRANSFORM_ROT13N5  = "ROT13N5";FfB北方站长站
   private static final String TRANSFORM_ROTASCII = "ROT-ASCII";FfB北方站长站
   FfB北方站长站
   private void jbInit() throws Exception {FfB北方站长站
      ...FfB北方站长站
   }FfB北方站长站
   FfB北方站长站
   public static final String TITLE   = "RotPad";FfB北方站长站
   public static final String VERSION = "1.0";FfB北方站长站
   FfB北方站长站
   public static void main(String[] args) {FfB北方站长站
      ...FfB北方站长站
   }FfB北方站长站
   FfB北方站长站
   public RotPad() {FfB北方站长站
      ...FfB北方站长站
   }FfB北方站长站
   FfB北方站长站
   private JPanel jPanel1 = new JPanel();FfB北方站长站
   private JPanel jPanel2 = new JPanel();FfB北方站长站
   private BorderLayout borderLayout1 = new BorderLayout();FfB北方站长站
   ...FfB北方站长站
   }FfB北方站长站
FfB北方站长站
Example 6. Good Class Style. FfB北方站长站
FfB北方站长站
   /**FfB北方站长站
    * RotPad is a simple GUI application for performing rotation ciphers on plain FfB北方站长站
    * text.FfB北方站长站
    *FfB北方站长站
    * @author Thornton RoseFfB北方站长站
    * @version 1.0FfB北方站长站
 &FfB北方站长站

 

News

 

info

 

down

出售手机裁听器,手机跟踪定位系统    企业网站,网城,购物网,都市导购,校园网    网上书店系统    上海电信机房服务器托管,双线主机托管    美女图片馆    15G 高清晰图片资源 无水印    室内装潢材料新产品杰威尔艺术漆    收一万ip的美女图片    大量收购个人网址导航网站    出售网址站PR=4alexa=119,764    

下一篇链接:Good Java Style: Part 1

上一篇链接:in Software that use java, Show popmenu that have the function of cut copy past to

评论】 【打印】 【加入收藏】 【关闭→论坛 →博客 →数据中心

 共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面