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();
解析:难懂,且没有任何意义。
Java高级规范之二的更多相关文章
- Java编程规范(二)
二.格式规范 在上一篇的java编程规范(一)中我们讲述了在Java编码中的一般原则,虽然这些原则并不涉及具体的代码规范,但是这些原则却是我们在Java开发过程中所应该遵循的规范与思想.今天我们将学习 ...
- java高级规范之一
一.不允许使用汉语拼音命名 不规范示例: public void zengjiaYongHu{}//拼音方法名称 规范示例: public void addUser(){} 解析:应该使用国际化语音, ...
- Java高级规范之四
四十一.控制层不能调用model层除了最顶级的接口外的任何内容.要通过new顶级接口才能调用. 不规范示例: public class UserServiceImpl{ private UserDAO ...
- Java高级规范之三
三十一.如果变量名要加注释,说明命名不是很准确. 不规范示例:暂无 规范实例:暂无 解析:暂无 三十二.任何类字段除非必要,否则都要私有化 不规范示例: public class Person{ St ...
- Java高级篇(二)——网络通信
网络编程是每个开发人员工具相中的核心部分,我们在学习了诸多Java的知识后,也将步入几个大的方向,Java网络编程就是其中之一. 如今强调网络的程序不比涉及网络的更多.除了经典的应用程序,如电子邮件. ...
- Java高级类特性(二)
一.static关键字 static关键字用来声明成员属于类,而不是属于类的对象.1). static (类)变量类变量可以被类的所有对象共享,以便与不共享的成员变量区分开来. static变量也称作 ...
- JAVA语言编程格式高级规范
作为一位开发人员,都要有严格的代码规范.为此我总结了一些代码规范案例. 目 录 1. 前言 2. 试用范围 3. JAVA命名规范-- 3.1 公共约定 3.2 Java文件.包 3.3 类.接口 ...
- Java高级面试题解析(二):百度Java面试题前200页(精选)
基本概念 操作系统中 heap 和 stack 的区别 heap是堆,stack是栈,是两种不同的数据结构.堆是队列优先,先进先出:栈是先进后出. 在java多线程中,每个线程都有自己的栈:不同的线程 ...
- 测试必备之Java知识(二)—— Java高级的东西
Java高级 类加载过程 加载(创建class对象) -> 连接(验证-准备-解析) -> 类初始化 类加载器类别 根类加载器:加载java核心类 扩展类加载器:加载JRE目录中的jar包 ...
随机推荐
- XmlHelper
获取XML节点的值(http服务使用xml传输数据,节点名称唯一) /// <summary> /// 获取xml节点的值 /// </summary> /// <par ...
- 对COM 组件的调用返回了错误 HRESULT E_FAIL
.net ppt转pdf时报以下错误: 对COM 组件的调用返回了错误 HRESULT E_FAIL 在服务器端打开PPT,选项--另存为--PDF,发现PowerPoint报了个错误: “无法找到打 ...
- 动态拼接linq 使用Expression构造动态linq语句
最近在做动态构造linq语句,从网上找了很多,大多数,都是基于一张表中的某一个字段,这样的结果,从网上可以搜到很多.但如果有外键表,需要动态构造外键表中的字段,那么问题来了,学挖掘机哪家强?哦,不是, ...
- WHMCS成功安装和使用方法及添加支付宝,PayPal收款教程
一.WHMCS安装前准备 1.WHMCS官网: 1.官方首页:http://www.whmcs.com/ 2.WHMCS需要安装在一个带MysqL数据库的PHP服务器中,一般地我们日常安装的VPS控制 ...
- javadoc 生成自定义的标签
转自:http://www.blogjava.net/lishunli/archive/2010/01/12/309218.html Technorati 标记: tools 关键词 个性化地生成Ja ...
- Swift 2.0 异常处理
转自:http://www.jianshu.com/p/96a7db3fde00 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主 ...
- 两台装有Ubuntu系统的服务器搭建VPN(一台为本地服务器,另一台为云服务器)
我们搭建VPN采用的是openvpn,搭建过程总体需要经过三大步骤: 1.openvpn的安装与配置 2.端口转发 3.系统重启iptables规则自动生效 注意:以下所有名令在ro ...
- php 字符串转数组
$str = "你好吗"; function str($str) { $length = mb_strlen($str); for ($i=0; $i<$le ...
- win8没有无线网络适配器问题
1. 先关闭ssid : 命令提示符(管理员)输入 :netsh wlan set hostednetwork mde=disallow ssid 2. 再设置无线名称和密码 :netsh wlan ...
- AngularJs的UI组件ui-Bootstrap分享(十)——Model
Model是用来创建模态窗口的,但是实际上,并没有Model指令,而只有$uibModal服务,创建模态窗口是使用$uibModal.open()方法. 创建模态窗口时,要有一个模态窗口的模板和对应的 ...