Java高级规范之二

时间:2023-05-19 19:33:44

二十一、提交java代码前应该检查是否有没用的语句,如:System.out.println(); jsp页面上面是否有alert调试信息

  不规范示例:暂无

  规范实例:暂无

  解析:因为如果保留了有可能会影响到程序正常运行的结果,如:

  for(int i=0;i<10;i++){

    System.out.println(i);

  } //如果测试for语句里有没有执行

  for(int i=0;i<10;i++){

    System.out.println("测试代码是否运行到这里");

  }

  for(int i=0;i<10;i++){

    System.out.println(i);

  } 如果没有删除测试语句,则结果就不会一样了。

二十二、两个不同的包不能出现相同的文件名

  不规范示例:

  packge com.lxitedu.work.MyWork.java

  packge com.lxitedu.task.MyWork.java

  规范示例:

  packge com.lxitedu.work.MyWork.java

  packge com.lxitedu.task.Work.java

  解析:当一个包在一个庞大的系统的时候,很可能引起混淆

二十三、提交代码前如果有TODO标签,要删除,如果要标记没有做完的任务或者以后要改进的任务,用LXTODO

  不规范示例:暂无

  规范实例:暂无

  解析:暂无

二十四、注释掉的代码提交前要删除。

  不规范示例:

   /*

   public void add(){

     if(true){

      system.out.println("这段代码已经给注释了,程序中没有用到");

    }

  }

  */ 提交前没有删除这段代码

  规范示例:删掉就行了

  解析:既然代码在程序中没用的话就要删除,以免其他队员看到后误解和浪费他人的时间来读其代码。

二十五、代码提交前的注释里面不要加自己的名字

  不规范示例:暂无

  规范实例:暂无

  解析:因为提交的时候,系统已经帮你提交了用户名。

二十六、PrepareStatement、ResultSet、Statement对象用完之后必须进行调用close(),将会关闭立即释放此Statement对象的数据库和JDBC资源,不然会占用系统很多资源

  解析:此规范可以用适配器模式解决,不必手动去关闭了

二十七、尽量不要在构造方法里初始化

  不规范示例:

  public class Person{

    public Person(){

      Person person = new Person();

      add();

    }

   }

  规范示例:

   public calss Person{

    public Person()

    Unknown macro:{//尽量少做些不必要的事情}

    }

  解析:因为在构造器里初始化没办法控制,构造器多了也容易出现混乱。如果有反射机制,也许会跳过构造方法。

二十八、函数的返回值类型(如果有的话)要和其功能相匹配,要符合常规思维

  不规范示例:

   //得到一个用户的姓名

  public String getPeopleName(){

     return "userName";

   }

  //得到一个用户的姓名

  public String getUserName(){

    return "userName";

  }

  解析:是得到一个用户的姓名,而不是得到一个人的姓名,因为人不一定是用户,所以用getUserName更准确一点

二十九、 内部类的变量不要设为全局变量,尽量少用全局变量

  不规范示例:暂无

  规范实例:暂无

  解析:暂无

三十、如果是布尔型的变量则最好在命名用is或has开头。例如:isVisible,isExists等

  不规范示例: boolean isTrue = resultSet.next();

  规范示例: boolean hasNext = resultSet.next();

  解析:难懂,且没有任何意义。