Java编码规范(自己个人小结,供大家参考)
下面是我个人刚学JAVA时,对JAVA编码规范的一些小结,希望能给大家一些帮助!更详细的可以查看SUN提供的JAVA编码规范!
一 命名惯例
1)类:名词或名词性词组,每个单词首字母大写;一般不使用缩写,除非其缩写更通用和便于理解,如HTML;
类命名举例:class Person; class SpringRain
2)方法:动词或动词性词组,首字母小写,第二个及以后的单词首字母大写;
方法命名举例:run(); displayInformation();
3)接口: 同"类"的命名规则
接口命名举例:interface Runner;
4)变量: 名词或名词性词组,首字母小写,第二个及以后的单词首字母大写;
不提倡使用下画线"_"和美元符"$"作为变量开头;单词间可以使用下画线分隔;
变量名不宜过长但也应有意义,除非是临时使用(例如只涉及几行代码)后即丢弃
的情况,不建议使用单个字母做变量名,常用的临时使用的变量名包括表示整数的
i,j,k,m,n和表示字母的c以及表示异常对象的e等。
变量命名举例:int age; int student_age; String studentName; Exception e;
5)常量:名词或名词性词组,每个单词的首字母大写;单词间使用下画线分隔。
常量命名举例:int MAX_LEVEL; double Comm_Tax;
6)包: 名词或名词性词组,全部小写;一般使用本公司/组织网站域名的逆序
后跟具体的软件内部模块名
包命名举例: package com.sun.java; package com.mycompany.db;
二 文件组织
1.建议一个源文件中只定义一个Java类或接口,无论该类或接口是否被声明为pulibc的,
文件名都以其来命名,源文件中各成分的出现顺序为:
1)开始的注释
2)package语句
3)import语句
4)类/接口声明
2.在一个Java类中,各种成分的排列顺序本无严格规定,也没有特别通用的惯例,为便于掌握,给出一个推荐的顺序:
1)属性声明
2)构造方法声明
3)static语句
4)普通方法声明
5)main方法声明
6)内部类的声明
三 分隔和缩进
1.使用空行
在下述情况下使用单行的空白行来分隔:
1)在方法之间
2)在方法内部代码的逻辑段落小节之间
3)在方法中声明局部变量之后,具体的Java语句之前
4)在注释行之前
在同一个源文件中定义的多个类/接口之间使用双行的空白行来分隔
2.使用空格符
除正常的成分之间以空格符分隔名(如数据类型和变量名之间),在下述情况下也应使用一个空格符来分隔:
1)运算符和运算符之间,如: c = a + b;
2)在参数列表中的逗号后面,如: void m1(int year, int month) {}
3)在if,for,while待语句之后 如: if (a > b) {}
3.使用换行符
不建议在一行中写多条语句,一条语句的长度一般超过了80个字符时,应该换行
4.使用小括号
可以使用小括号来强行规定运算顺序
5.使用花括号
开始位置可以位于当前内容的尾部,也可以另起一行
6.使用缩进
在下述情况下应用缩进
1)类中的成分
2)方法体或语句块中的成分
3)换行时的非起始行
缩减量一般为在上一级成分的基础上再缩进四个空格,或跑到下一个制表位
四 声明语句
建议每行声明一个变量,并尽量在声明变量的同时对其进行初始化,除非其初值尚不确定。局部变量应在其所在的方法或语句块的开头集中声明,而不应随用随声明。
五 下面给出一个程序,结合上面的介绍,注意下Java编码规范
注意:在eclipse开发工具中,把代码写好之后,可以用快捷键:CTRL + SHIFT + F来自动格式化代码
/** * Copyright: Copyright (c) 2002-2004 * Company: JavaResearch(http://www.javaresearch.org ) * 最后更新日期:2003年4月3日 * @author Cherami */ package org.jr.util; import java.util.*; /** * 此类中封装一些常用的List操作方法。 * 所有方法都是静态方法,不需要生成此类的实例, * 为避免生成此类的实例,构造方法被申明为private类型的。 * @since 0.5 */ public class ListUtil { /** * 私有构造方法,防止类的实例化,因为工具类不需要实例化。 */ private ListUtil() { } /** * 将数组中的内容全部添加到列表中。 * @param array 数组 * @param list 列表 * @since 0.5 */ public static void addArrayToList(Object[] array, List list) { if (array == null || list == null || array.length == 0) { return; } for (int i = 0; i < array.length; i++) { list.add(array[i]); } } /** * 将数组中的内容全部添加到列表中。 * @param array 数组 * @param list 列表 * @param start 开始位置 * @since 0.5 */ public static void addArrayToList(Object[] array, List list, int start) { if (array == null || list == null || array.length == 0) { return; } for (int i = 0; i < array.length; i++) { list.add(start + i, array[i]); } } } |
引用楼主 johnston678 的帖子:
注意:在eclipse开发工具中,把代码写好之后,可以用快捷键:CTRL + SHIFT + F来自动格式化代码
网友补充:不要依赖于 IDE 的代码格式化功能,应该在写的时候就做到规范格式的代码。
一个层次的缩进推荐采用 4 个空格,而不是 1 个制表符,而 Eclipse 默认格式化是采用 1 个制表符的,可以采用下面的方式更改一下:
Window ——> Preferences…… ——> Java ——> Code Style ——> Formatter 点右边的“Edit……”按钮,切换到第一个选项卡“Indentation”,在 General settings 组将 Tab policy 由 Table only 改为 Space only,同时把 Indentation size 和 Tab size 改为 4,最后把最上面的 Profile name 取一个名字,名字任意,再点 OK 按钮就可以了。以后按 Tab 键或者 Ctrl + Shift + F 会自动采用 4 个空格作为一个层次的缩进。
如果采用 EditPlus 编写代码的话,也可以更改 Tab 的设置。
另外,对于 HTML、XML、CSS、JavaScript 我也有一些代码格式方面的建议:
1,HTML、XML 由于层次缩进比较多,建议采用两个空格作为一层缩进;
2,CSS 和 JavaScript 为了与 HTML 配合,也采用两个空格作为一层缩进;
3,HTML、XML 的标签名、属性称全部使用小写字母,HTML 尽量能符合 XHTML 的规范,避免使用 XHTML 不推荐使用的标签,比如:font、applet 等等;
4,HTML 的属性值采用双引号界定;
5,JavaScript 在尽量使用标准的语法、对象等,变量声明能加上 var.字符串常量统一采用单引号界定
···
···