NOTE:以下部分为一个简要的编码规范,更多规范请参考 ORACLE
官方文档。

地址:http://www.oracle.com/technetwork/java/codeconventions-150003.pdf

另外,请使用 UTF-8
格式来查看代码,避免出现中文乱码。

至于注释应该使用中文还是英文,请自己行决定,根据公司或项目的要求而定,推荐使用英文。

1.
整理代码

1.1. Java
代码中不允许出现在警告,无法消除的警告要用 @SuppressWarnings

1.2.
去掉无用的包、方法、变量等,减少僵尸代码。

1.3.
使用 Lint 工具来查看并消除警告和错误。

1.4.
使用 Ctrl+Shift+F 来格式化代码,然后再进行调整。

1.5.
使用 Ctrl+Shift+O 来格式化 Import 包。

2.
命名规则

2.1.
基本原则

2.1.1.
变量,方法,类命名要表义,严格禁止使用 name1, name2 等命名。

2.1.2.
命名不能太长,适当使用简写或缩写。(最好不要超过 25 个字母)

2.1.3.
方法名以小写字母开始,以后每个单词首字母大写。

2.1.4.
避免使用相似或者仅在大小写上有区别的名字。

2.1.5.
避免使用数字,但可用 2 代替 to,用 4 代替 for 等,如go2Clean。

2.2.
类、接口

2.2.1.
所有单词首字母都大写。使用能确切反应该类、接口含义、功能等的词。一般采用名词。

2.2.2.
接口带 I 前缀,或able, ible,er等后缀。如ISeriable。

2.3.
字段、常量

2.3.1.
成员变量以 m 开头,静态变量以 s 开头,如 mUserName, sInstance。

2.3.2.
常量全部大写,在词与词之前用下划线连接,如 MAX_NUMBER。

2.3.3.
代码中禁止使用硬编码,把一些数字或字符串定义成常用量。

2.3.4.
对于废弃不用的函数,为了保持兼容性,通常添加 @Deprecated,如
{@link #doSomething()}

3.
注释

请参考 {@link #SampleCode}类的注释。

3.1.
常量注释,参见 {@link #ACTION_MAIN}

3.2.
变量注释,参见 {@link #mObject0}

3.3.
函数注释,参见 {@link #doSomething(int,float, String)}

4. Class
内部顺序和逻辑

4.1.
每个 class 都应该按照一定的逻辑结构来排列基成员变量、方法、内部类等,

从而达到良好的可读性。

4.2.
总体上来说,要按照先 public, 后protected, 最后 private, 函数的排布

也应该有一个逻辑的先后顺序,由重到轻。

4.3.
以下顺序可供参考:

定义TAG,一般为 private(可选)

定义 public 常量

定义 protected 常量、内部类

定义 private 变量

定义 public 方法

定义 protected 方法

定义 private 方法

5.
表达式与语句

5.1.
基本原则:采用紧凑型风格来编写代码

5.2.
细则

5.2.1.
条件表示式,参见 {@link #conditionFun(boolean)}

5.2.2. switch
语句,参见 {@link #switchFun(int)}

5.2.3.
循环语句,参见 {@link#circulationFun(boolean)}

5.2.4.
错误与异常,参见 {@link #exceptionFun()}

5.2.5.
杂项,参见 {@link #otherFun()}

5.2.6.
批注,参见 {@link #doSomething(int,float, String)}

Java代码规范文档的更多相关文章

  1. Vue项目开发最新、最全代码规范文档

    Vue项目开发最新.最全代码规范文档 2019年02月21日 10:43:49 yw00yw 阅读数 337   一. 目录结构 |— build 构建脚本目录 |— build.js 生产环境构建( ...

  2. iOS代码规范文档

    文件命名规范: 1. 项目统一使用类前缀ZY. 2. 分类命名+后面统一使用ZYExtension,例:NSDictionary+ZYExtension.h,常用分类定义在内部并写好文档注释.如果功能 ...

  3. JVM 内部原理(五)— 基本概念之 Java 虚拟机官方规范文档,第 7 版

    JVM 内部原理(五)- 基本概念之 Java 虚拟机官方规范文档,第 7 版 介绍 版本:Java SE 7 每位使用 Java 的程序员都知道 Java 字节码在 Java 运行时(JRE - J ...

  4. 自己的Java规范文档

    参考阿里Java规范文档 不建议使用过时方法 泛型需要加上<>,这种方式创建的对象是不推荐的. Map object = new HashMap();//禁止使用 字符串比较时,不需要大小 ...

  5. 【转载】WEB前端开发规范文档

    本文转载自谈笑涧<WEB前端开发规范文档> 为 新项目写的一份规范文档, 分享给大家. 我想前端开发过程中, 无论是团队开发, 还是单兵做站, 有一份开发文档做规范, 对开发工作都是很有益 ...

  6. 还在手工制作APP规范文档?这款设计神器你不容错过

    之前写了一些关于APP原型文档的文章:一款APP的交互文档从撰写到交付 这次想写下关于APP设计规范文档的内容,规范文档这个东西,实际上大部分中小型公司没有这方面的需求,也没精力去制作这样一个系统性的 ...

  7. C# 代码注释规范文档

    C# 提供一种机制,使程序员可以使用含有 XML 文本的特殊注释语法为他们的代码编写文档.在源代码文件中,具有某种格式的注释可用于指导某个工具根据这些注释和它们后面的源代码元素生成 XML.使用这类语 ...

  8. 2.SDL规范文档

    01.安全设计Checklist 输入验证 校验跨信任边界传递的不可信数据(策略检查数据合法性,含白名单机制等)格式化字符串时,依然要检验用户输入的合法性,避免可造成系统信息泄露或者拒绝服务 禁止向J ...

  9. Web前端开发规范文档

    Web前端开发规范文档 规范目的: 使开发流程更加规范化. 通用规范: TAB键用两个空格代替(windos下tab键占四个空格,linux下TAB键占八个空格). CSS样式属性或者JAVASCRI ...

随机推荐

  1. [ Linux ] [ OS ] [ CPU ] Linux系統 OS, CPU, Memory, Disk

    查看 linux 版本 及 Kernel 版本 指令: cat /etc/*-release http://benit.pixnet.net/blog/post/19390916-%E5%A6%82% ...

  2. linux上测试磁盘IO速度

    运维工作,经常要测试服务器硬件性能,以此来判断是否存在性能瓶颈. 下面介绍在linux上测试磁盘IO速度的工具: 1.hdparm CentOS中,安装的两种方法: 1) yum安装. # yum i ...

  3. Linxu基本指令

    一.Linux权限的概念 Linux下有两种用户:普通用户和超级用户(). 普通用户:在linux下做有限的事情: 超级用户:可以在linux系统下做任何事情,不受限制. 普通用户的提示符是“$”,超 ...

  4. 设置fixed,横向滚动条失效

    window.onscroll = function(){ var sl = -Math.max(document.body.scrollLeft,document.documentElement.s ...

  5. HDU-3746 Cyclic Nacklace 字符串匹配 KMP算法 求最小循环节

    题目链接:https://cn.vjudge.net/problem/HDU-3746 题意 给一串珠子,我们可以在珠子的最右端或最左端加一些珠子 问做一条包含循环珠子的项链,最少还需要多少珠子 思路 ...

  6. JDBC读写MySQL的大字段数据

    JDBC读写MySQL的大字段数据   不管你是新手还是老手,大字段数据的操作常常令你感到很头痛.因为大字段有些特殊,不同数据库处理的方式不一样,大字段的操作常常是以流的方式 来处理的.而非一般的字段 ...

  7. mariadb 视图 事务 索引 外键

    视图 对于复杂的查询,在多个地方被使用,如果需求发生了改变,需要更改sql语句,则需要在多个地方进行修改,维护起来非常麻烦   假如因为某种需求,需要将user拆房表usera和表userb,该两张表 ...

  8. 洛谷 P2027 bf

    P2027 bf 题目描述 bf是一种编程语言,全称为BrainFuck,因为题目名称不能太露骨,所以就简写成bf了. 这种语言的运行机制十分简单,只有一个大小为30000的有符号8位整数(范围[-1 ...

  9. java用jxl实现导出execl表格

    //先将需要导出的数据放到list中 //然后将list中的数据放到execl表中 @RequestMapping(params="exportExecl") public Str ...

  10. 通过案例快速学会Picasso图片缓存库

    picasso是Square公司开源的一个Android图形缓存库,官网地址http://square.github.io/picasso/,可以实现图片下载和缓存功能.        下载地址:ht ...