如何写出优质Java代码的4个技巧?

作者&投稿:仉姣 (若有异议请与网页底部的电邮联系)
~

如果现在要求对你写的Java代码进行优化,那你会怎么做呢?作者在本文介绍了可以提高系统性能以及代码可读性的四种方法,如果你对此感兴趣,就让java课程一起来看看吧。



我们平时的编程任务不外乎就是将相同的技术套件应用到不同的项目中去,对于大多数情况来说,这些技术都是可以满足目标的。然而,有的项目可能需要用到一些特别的技术,因此工程师们得深入研究,去寻找那些最简单但最有效的方法。在以前一篇文章中,我们讨论了必要时可以使用的四种特殊技术,这些特殊技术可以创建更好的Java软件;而本文我们将介绍一些有助于解决常见问题的通用设计策略和目标实现技术,即: 

1.只做有目的性的优化 

2.常量尽量使用枚举 

3.重新定义类里面的equals()方法 

4.尽量多使用多态性


值得注意的是,本文中描述的技术并不是适用于所有情况。另外这些技术应该什么时候使用以及在什么地方使用,都是需要使用者经过深思熟虑的。


1.只做有目的性的优化

大型软件系统肯定非常关注性能问题。虽然我们希望能够写出最高效的代码,但很多时候,如果想对代码进行优化,我们却无从下手。


最重要的是天下没有免费的午餐,因此为了降低代价,我们通常会通过类似于缓存、循环展开或预计算值这类技术去实现优化,这样反而增加了系统的复杂性,也降低了代码的可读性。如果这种优化可以提高系统的性能,那么即使变得复杂,那也是值得的,但是做决定之前,必须首先知道这两条信息: 

1.性能要求是什么 

2.性能瓶颈在哪里


首先我们需要清楚地知道性能要求是什么。如果最终是在要求以内,并且最终用户也没有提出什么异议,那么就没有必要进行性能优化。但是,当添加了新功能或者系统的数据量达到一定规模以后就必须进行优化了,否则可能会出现问题。


在这种情况下,不应该靠直觉,也不应该依靠检查。因为即使是像MartinFowler这样有经验的开发人员也容易做一些错误的优化,正如在重构(第70页)一文中解释的那样:


如果分析了足够多的程序以后,你会发现关于性能的有趣之处在于,大部分时间都浪费在了系统中的一小部分代码中里面。如果对所有代码进行了同样的优化,那么最终结果就是浪费了90%的优化,因为优化过以后的代码运行得频率并不多。因为没有目标而做的优化所耗费的时间,都是在浪费时间。





如何写出好的Java代码
比较好的解决方式是写出一个共用的base class,它为两个derived classes制作出共用接口–这种方式会耗用更多空间,但你可以如你所盼望地从继承机制获得好处,而且或许能够在设计上获得重大发现。32. 注意继承上的限制。最清晰易懂的设计是将功能加到继承得来的class里头;继承过程中拿掉旧功能(而非增加新功能)则是一种可...

Java代码处理数据技巧(java代码处理数据技巧有哪些)
1.Java编程语言,即语法。 2.Java文件格式,即各种文件夹慎困握、文件的后缀。 3.Java虚拟机(JVM),即处理*.class文件的解释器。 4.Java应用程序接口(JavaAPI)。 二、零基础如何学习Java开发?需要掌握哪些技能?掌握静态方法和属性 静态方法和属性用于描述某一类对象群体的特征,而不是单个对象的特征。Java中大量应用...

35年java沉淀下来的8条宝贵经验
4、写三次代码 好的程序员目标是写出可以运行的软件就可以了。伟大的程序员写出来的软件目标是运行得非常好。通过一次编写这种情况几平不可能发生。最好的软件通常被写三次:(1)首先,编写软件以向你自己(或客户)证明解决方案是可行的。其他人可能没有意识到这只是一个概念验证,但你确实这么做了。...

如何成为高级Java工程师
六、精通一种或两种WEBServer。尽管我再《如何成为java初级程序员》里讲过它,我还是要强调您要精通一种或两种。因为作为JAVA工程师,特别时想成为高级JAVA工程师的您,您不可避免地要部署您的项目到WebServer上,而且只有当您精通一种WebServer,您才可能最大限度地使用它的资源,这往往可以节省很多时间...

为了写好代码,你坚持了哪些好习惯?
多阅读优秀的代码 有空的时候多看看一些优秀的开源框架的代码,不要求研究透彻,只要能学习到其中的一些优秀的设计理念就可以了,可以通过打断点调试的方式去看源码。多看看官方文档,它一定是最准确、最实时的资料。编写官方文档的人,也通常就是这些技术或者软件的开发者,他们是对这些东西最了解的人,...

学习java 3年了,感觉对java仍然很模糊,想学精java,可是就是不知道该...
这样有利于你对于极端问题写出更有效律的代码。也能帮你评估所谓的JAVA跨平台是不是真得能在你特定需要的环境运行等。看JDK原码可以帮助你了解你需要的算法是否有效,以及给你提过一个编程的思路。然后如果你一只只用JAVA,不妨换一个语言看看。目的不是为了精通另外一门语言,而是通过对比发现JAVA的长处和缺点。取长补...

Java代码如何优化?从哪些方面入手?分析?
1)尽量指定类、方法的final修饰符。带有final修饰符的类是不可派生的,Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,此举能够使性能平均提高50%。2)尽量重用对象。由于Java虚拟机不仅要花时间生成对象,以后可能还需要花时间对这些对象进行垃圾回收和处理,因此生成过多的...

想当一名JAVA程序员,需要具备什么样的条件。知识需要达到何种水平?_百度...
中级:--设计模式(包含Java中的多线程设计模式)--JSP--Servlet--Tomcat(服务器)--数据库(Mysql,Oracle,Sql Server)--经典的开源框架(Struts,Hibernate,Spring)高级:--RMI---JNDI--EJB 大体上是这样的,顺序也不是固定的,你可以灵活学习,他们之间是有联系的,这样可以相互促进学习,我...

学习Java程序设计的方法和技巧?
Java异常学习心得 本文重在Java中异常机制的一些概念。写本文的目的在于方便我很长时间后若是忘了这些东西可以通过这片文章迅速回忆起来。1. 异常机制 1.1 异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全通道。当出现错误后,程序执行的流程发生改变,程序的控制权...

中高级java开发面试题?
恳请高手给小弟出一份java软件工程师的面试题Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。字符串的操作:写一个方法,实现字符串的反转,如:输入abc,输出cba写一个方法,实现字符串的替换,如:输入bbbwlirbbb,输出bbbhhtccc。自动装箱是Java编译器在基本数据类型和对应的对象包装...

西乌珠穆沁旗19181165324: 怎样编写高质量的Java代码 -
巴货香云: 如何编写高质量代码,从而提升系统性能.想必是很多程序员都非常注意的地方,最近总结了一些要点,特此记录在案. 所谓代码高可读性和高可维护性,其实就是应该有着规范的Java程序设计风格,在开发程序过程中,从近期目标看是应该...

西乌珠穆沁旗19181165324: 编写java语言程序的规律技巧是什么, -
巴货香云: 这个问题其实很无聊,不过我现在也很无聊就回答一下:首先,还是要多写一些代码,这个是很重要的,但是不是最重要的,最重要的是理解主要的思想,java是面向对象的,所以理解面向对象的思想很重要.其次就是了解你想要实现的功能的逻辑,或者说是思路,然后用面向对象的思想来实现你的逻辑.当然,说是没用的,做才是最重要的.

西乌珠穆沁旗19181165324: Java背后的秘密之如何开发出高性能Java程序05 -
巴货香云: 1、开发高性能Java程序的原则和方法:决定一个Java程序性能的好坏,是多方面的因素,包括前期的系统结构设计、底层平台架构设计、应用开发中的代码编写以及技巧的使用,系统平台的软件配置,系统平台的硬件性能等等.这里只给出代...

西乌珠穆沁旗19181165324: java编程中的技巧? -
巴货香云: 熟能生巧. 就是常用基本技巧.

西乌珠穆沁旗19181165324: 怎样合理编写JAVA程序? -
巴货香云: (1) 类名首字母应该大写.字段、方法以及对象(句柄)的首字母应小写.对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母.例如: ThisIsAClassName thisIsMethodOrFieldName 若在定义中出现了常数初始化...

西乌珠穆沁旗19181165324: ITJava编程的技巧
巴货香云: 推荐你看一本书:Effective Java中文版,这本数的很多章节都是介绍怎样避免写出有问题的代码,值得参考.比如说第二章的4、5、6条. 第一章 引言 第二章 创建和销毁对象 第1条:考虑用静态工厂方法代替构造函数 第2条:使用私有构造函数强化singleton属性 第3条:通过私有构造函数强化不可实例化属性 第4条:避免创建重复的对象 条5条:消除对期的对象引用 第6条:避免使用终结函数 第三章 对于所有对象都通用的方法 第四章 类和接口 第五章 C语言结构的替代 第六章 方法 第七章 通用程序设计 第八章 异常 第九章 线程 第十章 序列化

西乌珠穆沁旗19181165324: 如何写java代码
巴货香云: 以下是列表和三角形的代码,至于菱形,不是很清楚你的意思,如果只是看外观的话可以把后一个循环倒置就能达到效果,如果一定要一个乘法表输出为菱形,那好像有点难度. public class Test { public static void main(String[]args){ for(int i = 1;...

西乌珠穆沁旗19181165324: 如何成为一名优秀的java工程师 -
巴货香云: 一、JAVA.要想成为JAVA(高级)工程师肯定要学习JAVA.一般的程序员或许只需知道一些JAVA的语法结构就可以应付了.但要成为JAVA(高 级)工程师,您要对JAVA做比较深入的研究.您应该多研究一下JDBC、IO包、Util包、Text包...

西乌珠穆沁旗19181165324: java工程师需要掌握哪些技能 -
巴货香云: 1、语法:必须比较熟悉,在写代码的时候,IDE(Integrated Development Environment,集成开发环境)的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误,并且知道任何修正.2、命令:必须熟悉JDK(Java Development Kit...

西乌珠穆沁旗19181165324: Java开发如何编写出优秀的Java单元测试 -
巴货香云: 1. 使用框架来用于单元测试 Java提供了若干用于单元测试的框架.TestNG和JUnit是最流行的测试框架.JUnit和TestNG的一些重要功能:易于设置和运行.支持注释 允许忽略或分组并一起执行某些测试.支持参数化测试,即通过在运行时指定...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网