Java开发中代码规范有哪些?
Java开发中所要遵守的编码规范大体上有如下7点。命名规范、注释规范、缩进排版规范、文件名规范、声明规范、语句规范以及编程规范。
1.命名规范
(1)所有的标示符都只能用ASCⅡ字母(A-Z或a-z)、数字(0-9)和下划线“_”。
(2)一个唯一包名的前缀总是全部小写的字母。例如:www.tonysun.cc
(3)类名是一个名词,采用大小写混合的方式,每个单词的首字母大写。例如:Tony。
(4)接口的大小写规则与类名相似:例如:Tony。
(5)方法名是一个动词或动词词组,采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。例如:setNeekeName(String neekeName)。
(6)变量名第一个字母小写,任何中间单词的首字母大写。变量名应简短且可以顾名思义,易于记忆。例如:neekeName、neekeAddress。避免单个字符的变量名,除非是一次性的临时变量。
(7)常量的声明应该全部大写,每个单词之间用“_”连接。例如:final String WWW_TONY_CN = "www.tonysun.cc";
2.注释规范
(1)注释尽可能使用“//”;对于所有的javadoc的注释则使用“/** */”;而临时对代码块进行注释尽量使用“/* */”。
(2)所有的源文件都应该在开头有一个注释,其中列出文件名、日期和类的功能概述。
(3)每个方法必须添加文档注释(类的main()方法除外)。
(4)每个属性必须添加注释。
(5)代码中至少包含15%的注释。
(6)注释使用中文。
3.缩进排版规范
(1)避免一行的长度超过60个字符。
(2)使用Eclipse的源代码的格式化功能完成代码的缩进排版(Ctrl+Shift+F)。
4.文件名规范
(1)一个Java源文件只能存储一个Java类。
(2)文件名与Java类名相同。
(3)一个类文件的代码行不超过200行。
5.声明规范
(1)一行声明一个变量。
(2)不要将不同类型变量的声明放在同一行。
(3)只在代码块的开始处声明变量。
(4)所有的变量必须在声明时初始化。
(5)避免声明的局部变量覆盖上一级声明的变量。
(6)方法与方法之间以空行分隔。
6.语句规范
(1)每行至少包含一条简单语句。
(2)在return语句中,返回值不使用小括号“()”括起来。
(3)if语句总是用“{”和“}”括起来。
(4)在for语句的初始化或更新子句中,避免因使用三个以上变量,而导致复杂度提高。
(5)当switch的一个case顺着往下执行时(因为没有break语句),通常应在break语句的位置添加注释。
7.编程规范
(1)提供对实例以及类变量的public或private访问控制,尽可能不适用默认值或protected访问控制。
(2)避免用一个对象访问一个类的静态变量或方法。应该用类名代替。
(3)避免在一个语句中给多个变量赋相同的值。
(4)用switch()语句实现多路分支。
(5)如果使用JDBC,则考虑使用java.sql.PreparedStatement,而不是java.sql.Statement。
(6)用于设置对象状态的方法前缀必须是set;用于检索一个布尔类型对象状态的方法前缀必须是is,而用于检索其他方法前缀必须是get。
(7)程序中应尽可能少使用数字(或字符),尽可能定义静态变量来说明该数字(或字符)的含义。程序中需要赋值或比较时,使用前面定义的静态变量。在循环控制中例外。
Java开发中代码规范有哪些?的更多相关文章
- [java开发篇][代码规范]
http://www.hawstein.com/posts/google-java-style.html Google Java编程风格指南 January 20, 2014 作者:Hawstein出 ...
- 编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则)
编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则) 目录 建议1: 不要在常量和变量中出现易混淆的字母 建议2: 莫让常量蜕变成变量 建议3: 三元操作符的类型务 ...
- 完整java开发中JDBC连接数据库代码和步骤[申明:来源于网络]
完整java开发中JDBC连接数据库代码和步骤[申明:来源于网络] 地址:http://blog.csdn.net/qq_35101189/article/details/53729720?ref=m ...
- [ 转载 ] Java开发中的23种设计模式详解(转)
Java开发中的23种设计模式详解(转) 设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类 ...
- Java开发中常见的危险信号(中)
本文来源于我在InfoQ中文站原创的文章,原文地址是:http://www.infoq.com/cn/news/2013/12/common-red-flags-in-java-1 Dustin Ma ...
- Java开发中文件读取方式总结
JAVA开发中,免不了要读文件操作,读取文件,首先就需要获取文件的路径. 路径分为绝对路径和相对路径. 在文件系统中,绝对路径都是以盘符开始的,例如C:\abc\1.txt. 什么是相对路径呢?相对路 ...
- java开发中遇到的问题及解决方法(持续更新)
摘自 http://blog.csdn.net/pony12/article/details/38456261 java开发中遇到的问题及解决方法(持续更新) 工作中,以C/C++开发为主,难免与其他 ...
- Java开发中常见的危险信号(上)
本文来源于我在InfoQ中文站原创的文章,原文地址是:http://www.infoq.com/cn/news/2013/12/common-red-flags-in-java-1 Dustin Ma ...
- Java开发中常用jar包整理及使用
本文整理了我自己在Java开发中常用的jar包以及常用的API记录. <!-- https://mvnrepository.com/artifact/org.apache.commons/com ...
随机推荐
- shared_ptr智能指针
来自博客:https://www.cnblogs.com/lzpong/p/6188034.html 多线程程序经常会遇到在某个线程A创建了一个对象,这个对象需要在线程B使用, 在没有shared_p ...
- maven No compiler is provided environment
eclipse maven操作正常出现的No compiler is provided in this environment. Perhaps you are running on a JRE ra ...
- Android中include标签的使用(打开引用布局,隐藏当前布局)
在开发app的时候,有时候一个布局会反复用到,可以把反复用到的布局单独写一个xml文件,什么时候用到就用includ标签引入xml 下面是我写的反复用到的一个xml,里面有2个button,一个Tex ...
- Modular Inverse (拓展欧几里得求逆元)
The modular modular multiplicative inverse of an integer a modulo m is an integer xsuch that a-1≡x ( ...
- 04-树6 Complete Binary Search Tree (30 分)
A Binary Search Tree (BST) is recursively defined as a binary tree which has the following propertie ...
- PIE SDK坐标系选择
1. 功能简介 坐标系选择可以查看当前图层的坐标系信息和显示其他坐标系的信息,下面将基于PIE SDK介绍如何实现坐标系选择功能. 2. 功能实现说明 2.1. 实现思路及原理说明 第一步 加载图层并 ...
- superobject 设定排序方式
(* * Super Object Toolkit * * Usage allowed under the restrictions of the Lesser GNU General Public ...
- my32_ error 1872 Slave failed to initialize relay log info structure from the repository
重启了实例后,slave进程无法开启 Last_SQL_Errno: Last_SQL_Error: Slave failed to initialize relay log info structu ...
- HTML问题 | 两个Input在同一行连着不留缝隙
方法1:让两个 input 连在一起写 不换行 <div class="inputDiv"> <input type="text" place ...
- Python max 和 min高级用法
zip max 比较一个字典,是按key比较 如果想比较字典的value max比较只能是相同类型,比如字符串和数字就不能比较会报错 这种会报错