`

如何编写高效率java代码

    博客分类:
  • java
阅读更多

如何编写高效率Java

规则1 用时间频度来确定异常情况
异常Exception的捕捉是会增加额外开销的。所以尽量避免过多的异常捕捉。越是经常调用的代码,越是要较少或者避免try…catch..finally。
细节1、左边的代码效率比右边的高(在for外捕获异常效率比每个循环开销小)

 

try{
for(){}
}
catch(Exception e){
}
for(){
try{
}
catch(Exception e){
}
}
细节2、finally中的return或者抛出的异常会产生complete abrupt结束。
try{
throw new Exception("Hello");
}
finally{
return 0; //此举使得Hello这个异常不会被上层看到。因为finally这里把异常抛弃,而返回0了。
}

 

规则2 用不需查异常RuntimeException及其子类来强化方法使用的约定

比如不希望被使用的方法,但不得不从父类集成,可以使用该方式。

规则3Error的子类表示系统级的异常和程序不用处理的异常

这样程序中不用显式捕获了。

规则4 用不从RuntimeException集成的子类来表示需查异常

规则5 反之,用从RuntimeException集成的子类来表示不需查异常

规则6 用链式异常保留原始异常的信息

e.printStackTrace的信息通过继承保留,便于跟踪程序调用层次。

 

代码风格部分:

规则7 将类的属性按种类分块

规则8 将方法的实现代码按功能分类

规则9 适度的使用对齐

规则10 控制代码的长度

规则11 尽可能不import

因为容易使得读代码的人难以定位

规则12 尽量减少同名的类

规则13 用包名体现类的层次

规则15StringBuffer/StringBuilder(from 5.0)代替迭代使用的String

规则16 手工清除短期对象的引用

比如在循环中使用的临时对象,如果不用了,在每个循环后面赋值null

while(true){

       Vector x = new Vector();

       ….

       x = null;

}

规则17 长期引用容易引起内存泄漏

ObjectOutputStream会保留所有已序列化的对象的引用,以免被重复序列化,所以每次new的对象都不会被垃圾收集,这时候需要手动处理:

Object xx = new XXX();

ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream());

out.write(xx);

out.flush();

out.reset();//此处释放引用从而不会泄漏。

 

规则18 用接口代替抽象类

继承用于继承父类的方法。组合用于数据的组合。

规则19 不要同时使用重载(overload)和覆盖(override)

overload在编译时起作用,override在运行时起作用。

规则20 正确使用继承表示分类关系

规则21 用组合来表示包含关系

组合(组成和聚合composition and aggregationUML都用聚合来表示。

规则22 避免方法的副作用

设计不可变类,动作只修改状态不返回状态。查询反之。

规则23 首善之举是重构

不是copy

规则24 选择合适的体系结构

规则25 通过Iterator,使用forwhile循环访问集合元素

规则26 使用不可变类作为Set或者Mapkey

规则27 不要与集合的实现南辕北辙

规则28 谨慎的使用集合的clone方法

(默认都是浅层复制,深层复制只能自己实现或者是不可变类)

规则29 掌握集合的惯用法

1、排序,使用Collections.sort()或者有序的集合。

2Collections.nCopies生成一个n个元素的不可变集合。帮助初始化

规则30 建议定义完整的性能调整过程

规则31 建议改善java运行环境

规则32 建议减少创建对象

规则33 建议减少循环体的代码

函数的调用,数组的操作,不要使用函数调用作为循环结束的判断标志

规则34 减少IO操作时间

规则35 正确使用JDBC编程接口

分享到:
评论

相关推荐

    java代码书写规范

    本文提供一整套编写高效可靠的 ...经验证明,若从一开始就花时间编写高质量的代码,则在软件开发阶段,对代码的修改要容易很多。最后,遵循一套通用的程序设计标准将带来更大的一致性,使软件开发团队的效率明显提高。

    编写高效可靠的Java 代码的标准、约定和指南

    本文提供一整套编写高效可靠的 ...经验证明,若从一开始就花时间编写高质量的代码,则在软件开发阶段,对代码的修改要容易很多。最后,遵循一套通用的程序设计标准将带来更大的一致性,使软件开发团队的效率明显提高。

    Java 编程指南(一整套编写高效可靠的 Java 代码的标准、约定和指南)

    本文提供一整套编写高效可靠的 ...经验证明,若从一开始就花时间编写高质量的代码,则在软件开发阶段,对代码的修改要容易很多。最后,遵循一套通用的程序设计标准将带来更大的一致性,使软件开发团队的效率明显提高。

    Java代码命名规范详解含详细示例

    Java代码命名规范是编写高质量、可维护代码的基础。通过遵循有意义的名称、使用适当的命名约定(如小驼峰和大驼峰命名法)、避免使用保留字以及保持名称的简洁性,开发人员可以创建出清晰、易读和可维护的代码。这...

    高效率文件复制java版

    文件复制在我们开发当中会经常用到 但其实并不难 我只是写核心代码 可以自己添加各种功能 例如进度 自编 转载请注明出处

    Java开发手册-代码规范

    《Java开发手册-代码规范》是一本旨在帮助Java开发者提高代码质量和可维护性的指南。该手册由阿里巴巴集团编写...通过遵循《Java开发手册-代码规范》,开发者可以编写出结构清晰、易读易懂、易于维护的高质量Java代码。

    java代码编写的图书馆管理系统压缩包

    基于java的图书管理系统 1.2 开发意义 图书管理是高校内每一个系部或院部都必须切实面对的工作,但一直以来人们使用传统的人工方式管理图书资料。这种方式存在着许多缺点,如效率低、保密性差且较为繁琐。另外,随着...

    代码生成器Mgicode生成器JAVA代码生成器

    在我们的潜意识中,Java开发就是让程序员(学生)一行一行地编写代码,编写HTML、CSS等,而.Net开发只要把控件拖到页面上即可,Java开发的效率一定比.Net低很多很多。 那么能不能提高Java的开发效率呢?作者经过分析...

    Java 拼图游戏 源代码

    用Java编写的九宫格代码实现 解压缩文件 效率比较高

    java手册中英文java8,java9手册

    它首先将源代码编译成字节码,再依赖各种不同平台上的虚拟机来解释执行字节码,从而具有“一次编写,到处运行”的跨平台特性。在早期JVM中,这在一定程度上降低了Java程序的运行效率。但在J2SE1.4.2发布后,Java的...

    java核心技术·卷II·高级特征(第9版·英文版)及源码

     Java核心技术卷II:高级特性(第9版英文版)(上、下册)专为做实际项目的程序员编写,是一本真实可信、不偏不倚且简单直接的Java教程,书中使用了全面测试过的代码示例来阐述关键的Java语言与库的特性,体现了最佳的...

    Java自动月历程序

    效率上是不高的。今天特地编写了利用java内置的Canlendar来获取时间(这个是依赖平台的,那个利用时间戳的是不依赖平台的)。 使用:可以在命令行里直接输入java AutoCalendar自动获取当前月份的日历。或者输入[示例]...

    java学习:03.硬链接和软连接.md

    同时,Java还提供了自动内存管理和异常处理机制,使开发人员能够更轻松地编写高质量的代码。 总之,Java是一种功能强大、易学易用、具有广泛应用和强大跨平台特性的编程语言。它的设计目标是提供一种高效的开发工具...

    Java与C语言混合开发技术

    Java与C语言混合开发是一种强大的编程技术,它结合了Java的跨平台性和C语言的高执行效率。通过JNI(Java Native Interface)技术,可以在Java代码中调用本地方法(Native Method),实现更高效、更灵活的程序设计。...

    java学习:05.Java注解和反射.md

    同时,Java还提供了自动内存管理和异常处理机制,使开发人员能够更轻松地编写高质量的代码。 总之,Java是一种功能强大、易学易用、具有广泛应用和强大跨平台特性的编程语言。它的设计目标是提供一种高效的开发工具...

    阿里巴巴java开发手册

    《阿里巴巴Java开发手册》是一份非常重要的文档,它为Java开发者提供了一系列规范和最佳实践,帮助他们编写高质量、高效率的Java代码。这个手册覆盖了从命名规范到异常处理、并发控制、代码风格等各个方面。以下是对...

    线程 JAVA java线程 java线程第3版 java线程第2版第3版合集

    本书讨论了死锁、竞态条件以及饥饿等问题的细节,帮助你编写没有潜在bug的代码。 本书第二版提供了对Thread和ThreadGroup类、Runnable接口和语言的同步操作符内容的全面讨论。它解释了如何在不同的平台上调度线程,...

    Java语言程序设计题解与上机指导.pdf

    至于程序代码,实现的方式更应该是多种多样的,通过学习本书希望读者能编写出简练、功能强、效率高、可读性好的代码。 《Java语言实用教程(第2版)》(从下面地址下载) http://download.csdn.net/source/3322142 ...

    JAVA基本编码规范

    本文提供一整套编写高效可靠的 Java 代码的标准、约定和指南。它们以安全可靠的软件工程原则为基础,使代码易于理解、...经验证明,若从一开始就花时间编写高质量的代码,则在软件开发阶段,对代码的修改要容易很多。

    Rexdb是一款使用Java语言编写的,开放源代码的持久层框架 提供了查询、更新、批处理、调用、(JTA)事务、数据源管理等功能

    Rexdb是一款使用Java语言编写的,开放源代码的持久层框架。提供了查询、更新、批处理、调用、(JTA)事务、数据源管理等功能,可以取代Mybatis、Hibernate作为系统的核心ORM框架。Rexdb提供了工具类风格的接口,不...

Global site tag (gtag.js) - Google Analytics