• Java高级规范之二


    二十一、提交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();

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

  • 相关阅读:
    app-framework学习--panel传值
    app-framework学习--动态管理panel
    app-framework学习--iscrolldemo
    app-framework学习--中文api
    app-framework学习--iscroll5+jquery+afui上拉加载下拉刷新
    DeepLearning tutorial(5)CNN卷积神经网络应用于人脸识别(详细流程+代码实现)
    提升深度学习模型的表现,你需要这20个技巧
    Deep Learning(深度学习)学习笔记整理系列之常用模型(四、五、六、七)
    池化
    卷积特征提取
  • 原文地址:https://www.cnblogs.com/amirsterry/p/3737943.html
Copyright © 2020-2023  润新知