Skip to Content
Java6 编程实践

6 编程实践

6.1 @Override:始终使用

只要合法,方法就应标注 @Override 注解。这包括:类方法覆盖超类方法、类方法实现接口方法、接口方法重新声明超接口方法,以及记录组件的显式声明的访问器方法。

**例外:**当父方法标注了 @Deprecated 时,可以省略 @Override

6.2 捕获的异常:不要忽略

在捕获异常后不做任何处理的做法极少是正确的。(典型的处理方式是记录日志,或者如果认为该异常”不可能”发生,则将其作为 AssertionError 重新抛出。)

当在 catch 块中确实不需要采取任何操作时,需要在注释中说明原因。

try { int i = Integer.parseInt(response); return handleNumericResponse(i); } catch (NumberFormatException ok) { // it's not numeric; that's fine, just continue } return handleTextResponse(response);

6.3 静态成员:使用类名限定

当需要限定对静态类成员的引用时,应使用该类的类名进行限定,而不是使用该类类型的引用或表达式。

Foo aFoo = ...; Foo.aStaticMethod(); // good aFoo.aStaticMethod(); // bad somethingThatYieldsAFoo().aStaticMethod(); // very bad

6.4 终结方法(Finalizer):不要使用

不要覆盖 Object.finalize。终结支持已被计划移除

Last updated on