JAVA代码规范笔记(下)

简介: 声明 17、推荐一行一个声明,因为这样有利于写注释。换句话说,下面的声明方法中, int level; // indentation levelint size; // size of table要优于: int level, size;绝对不要将变量和方法的声明放在同一行,例如:long dbaddr, getDbaddr(); // WRONG!不要将不同类型的变量的声明放在同一行,例如: int foo, fooarray[]; //WRONG!注意:上面的例子中,变量与标识符之间只用了一个空格。

声明

17、推荐一行一个声明,因为这样有利于写注释。换句话说,下面的声明方法中,

int level; // indentation level
int size; // size of table
要优于:

int level, size;
绝对不要将变量和方法的声明放在同一行,例如:
long dbaddr, getDbaddr(); // WRONG!
不要将不同类型的变量的声明放在同一行,例如:

int foo, fooarray[]; //WRONG!
注意:上面的例子中,变量与标识符之间只用了一个空格。另一种被接受的方式是使用制表符,如:

int level;		// indentation level
int size;		// size of table
Object currentEntry; 	// currently selected table entry

18、只把声明放在代码块的开头处。(一个代码块是指被包含在“{”和“}”之间的代码。)不要等到它们第一次用的时候才去声明变量,这会指没注意力到的程序员搞糊涂,同时也会妨碍到代码在该作用域内的移植性。

void MyMethod() {
    int int1; // beginning of method block
    if (condition) {
        int int2; // beginning of "if" block
        ...
    }
}

这条规则的唯一例外是 for 循环里的索引变量,它在Java代码中能声明在 for 语句里面。
for (int i = 0; i < maxLoops; i++) { ...

19、避免声明的局部变量覆盖了上一级别声明的变量。例如,不要在内部代码块中声明相同的变量名。

int count;
...
func() {
    if (condition) {
        int count; // 应避免!
        ...
    }
    ...
}


20、尽量在声明局部变量的同时初始化。唯一不这么做的理由是变量的初始值首先依赖于某些发生的计算。

21、当编写类和接口时,应遵循以下格式规则:

  • 在方法名与参数列表的左括号“(”之间不要有空格
  • 左大括号“{”位于声明语句同一行的结尾
  • 右大括号“}”另起一行,与对应的声明语句对齐。除非是一个空语句,这时“}”应紧跟在“{”之后。
class Sample extends Object {
    int ivar1;
    int ivar2;

    Sample(int i, int j) {
        ivar1 = i;
        ivar2 = j;
    }

    int emptyMethod() {}

    ...
}

  • 方法之间用空行隔开

语句

22、每一行最多包含一条语句。如:
argv++; argc--; // 应避免!

23、除非是有明显的理由,否则不要用逗号来组合多条语句。如:
if (err) {
    Format.print(System.out, “error”), exit(1); //严重错误<span style="font-family: Arial, Helvetica, sans-serif;">!</span>
}


目录
相关文章
|
3天前
|
运维 Java
Java版HIS系统 云HIS系统 云HIS源码 结构简洁、代码规范易阅读
云HIS系统分为两个大的系统,一个是基层卫生健康云综合管理系统,另一个是基层卫生健康云业务系统。基层卫生健康云综合管理系统由运营商、开发商和监管机构使用,用来进行运营管理、运维管理和综合监管。基层卫生健康云业务系统由基层医院使用,用来支撑医院各类业务运转。
21 5
|
11天前
|
Java 测试技术 应用服务中间件
常见 Java 代码缺陷及规避方式(下)
常见 Java 代码缺陷及规避方式(下)
32 0
|
12天前
|
Java
Java中ReentrantLock释放锁代码解析
Java中ReentrantLock释放锁代码解析
25 8
|
13天前
|
Java
Java基础—笔记—static篇
`static`关键字用于声明静态变量和方法,在类加载时初始化,只有一份共享内存。静态变量可通过类名或对象访问,但推荐使用类名。静态方法无`this`,不能访问实例成员,常用于工具类。静态代码块在类加载时执行一次,用于初始化静态成员。
10 0
|
13天前
|
Java API 索引
Java基础—笔记—String篇
本文介绍了Java中的`String`类、包的管理和API文档的使用。包用于分类管理Java程序,同包下类无需导包,不同包需导入。使用API时,可按类名搜索、查看包、介绍、构造器和方法。方法命名能暗示其功能,注意参数和返回值。`String`创建有两种方式:双引号创建(常量池,共享)和构造器`new`(每次新建对象)。此外,列举了`String`的常用方法,如`length()`、`charAt()`、`equals()`、`substring()`等。
14 0
|
16天前
|
前端开发 小程序 Java
uniapp上传图片 前端以及java后端代码实现
uniapp上传图片 前端以及java后端代码实现
30 0
|
17天前
|
设计模式 存储 Java
23种设计模式,享元模式的概念优缺点以及JAVA代码举例
【4月更文挑战第6天】享元模式(Flyweight Pattern)是一种结构型设计模式,旨在通过共享技术有效地支持大量细粒度对象的重用。这个模式在处理大量对象时非常有用,特别是当这些对象中的许多实例实际上可以共享相同的状态时,从而可以减少内存占用,提高程序效率
31 4
|
17天前
|
设计模式 Java 中间件
23种设计模式,适配器模式的概念优缺点以及JAVA代码举例
【4月更文挑战第6天】适配器模式(Adapter Pattern)是一种结构型设计模式,它的主要目标是让原本由于接口不匹配而不能一起工作的类可以一起工作。适配器模式主要有两种形式:类适配器和对象适配器。类适配器模式通过继承来实现适配,而对象适配器模式则通过组合来实现
30 4
|
18天前
|
存储 缓存 算法
优化 Java 后台代码的关键要点
【4月更文挑战第5天】本文探讨了优化 Java 后台代码的关键点,包括选用合适的数据结构与算法、减少不必要的对象创建、利用 Java 8 新特性、并发与多线程处理、数据库和缓存优化、代码分析与性能调优、避免阻塞调用、JVM 调优以及精简第三方库。通过这些方法,开发者可以提高系统性能、降低资源消耗,提升用户体验并减少运营成本。
|
20天前
|
Java 开发工具 流计算
flink最新master代码编译出现Java Runtime Environment 问题
在尝试编译Flink源码时遇到Java运行时环境致命错误:EXCEPTION_ACCESS_VIOLATION。问题出现在JVM.dll+0x88212。使用的是Java 11.0.28和Java HotSpot(TM) 64-Bit Server VM。系统为Windows客户端,没有生成核心dump文件。错误日志保存在hs_err_pid39364.log和replay_pid39364.log。要解决这个问题,建议检查JDK版本兼容性,更新JDK或参照错误报告文件提交Bug至http://bugreport.java.com/bugreport/crash.jsp。

热门文章

最新文章