java编写的151个注意事项(1)

Github即将破百万的PDF:编写高质量代码改善JAVA程序的151个建议 在通往"Java技术殿堂"的路上,本书将为你指点迷津!内容全部由Java编码的最佳 实践组成,从语法、程序设计和架构、工具和框架、编码风格和编程思想等五大方面,对 Java程序员遇到的各种棘手的疑难问题给出了经验性的解决方案,为Java程序员如何编写 高质量的Java代码提出了151条极为宝贵的建议。对于每一个问题,不仅以建议的方式从 正反两面蛤出了被实践证明为十分优秀的解决方案和非常精糕的解决方案,而且还分析了 问题产生的根源,犹如醍醐灌顶,让人豁然开朗。 全书-共12章,... 阅读详情

一::java中通用的方法和准则


1,不要在常量和变量中出现易混淆的字母

2,莫要常量蜕变成变量

3,三元操作符的类型要一致

4,避免带有变长参数的方法重载

5,别让null数值和空值威胁到变长方法

6,覆写变长方法也循规蹈矩

7,警惕自增的陷阱

8,不要让旧语法困扰你

9,少用静态导入

10,不要在本类中覆盖静态导入的变量与方法



11,养成良好习惯,显式声明UID

12,避免为final变量复杂赋值

13,避免用序列化类在构造函数中为不变量赋值

14,使用序列化类的私有方法巧妙解决部分属性持久化问题

15,break万万不可忘

16,易变业务使用脚本语言编写

17,慎用动态编译

18,避免instanceof非预期结果

19,断言绝对不是鸡蛚

20,不要只替换一个类


二::基本类型


21,用偶判断,不用奇判断

22,用整数类型处理货币

23,不要让类型默默转换

24,边界,边界,还是边界

25,不要让四舍五入亏了一方

26,提防包装类型的大小比较

27,谨慎包装类型的大小比较

28,优先使用整数池

29,优先选择基本类型

30,不要随便设置随机种子


三::类,对象及方法


31,在接口中不要存在实现代码

32,静态变量一定要先声明后赋值

33,不要覆写静态方法

34,构造函数尽量简化

35,避免在构造函数中初始化其他类

36,使用构造代码块精炼程序

37,构造代码块会想你所想

38,使用静态内部类提高封装性

39,使用匿名内部类的构造函数

40,匿名类的构造函数很特殊

41,让多重继承成为现实

42,让工具类不可实例化

43,避免对象的浅拷贝

44,推荐使用序列化实现对象的拷贝

45,覆写equals方法时不要识别不出自己

46,equals应该考虑null值情景

47,在equals中使用getClass进行类型判断(反射机制)

48,覆写equals方法必须覆写hashCode方法

49,推荐覆写toString方法

50,使用package-info类为包服务

51,不要主动进行垃圾回收


java类中方法重载注意事项 《编写高质量代码,改善Java程序的151个建议》 秦小波 著 这本书之前已经读过,但是今天再次读一遍同时也练习其中的demo,受益匪浅。 第一章java开发中通用的方法和准侧 方法的重载, package com.zcw.zcwbook.maindemo; import java.text.NumberFormat; /** * @program: zcwbook * @descri... 阅读详情

相关推荐

一个响应ping包延迟偏大的问题

前段时间客户反馈一个使用pc上的命令行ping无线设备(WiFi4)时,设备平均响应时间(测试时长2小时,1秒Ping一次)相比其它机型偏慢的问题,并上传上具体的时间的Log.从log中看到,大多数包的响应还是比较快的,只是个别响应时间较长,且响应时间长的包时间几乎都是一样的100多ms.如下是部分响应时间截图. 整个2小时的测试时间里,总是时不时的出这么上102,104ms的响应时间,这直接导致了平均响应时间被拉大.于是本地测试,也发现了类似的延迟.本地测试时,现象略有...

流风回雪的博客 1万+

java注意事项

1、类,方法的注释,要以javadoc的方式写2、非Javadoc 的注释,往往是给代码的维护看的,着重告诉读者为什么这样写,如何修改,注意什么问题等3、使用tab操作,实现缩进,默认整体向右移动。选中,tab整体右移,shift+tab整体左移4、运算符和 = 两边习惯性各加一个空格。比如:2 + 4 * 5 + 232 + 235、源文件使用utf-8编码6、 行宽度不要超过80字符7、代码编写次行风格和。

m0_59267941的博客 633

单细胞数据互转实战:从Scanpy的h5ad到Seurat对象的四种高效方法

本文针对单细胞数据分析中Scanpy的h5ad格式与Seurat对象互转的常见难题,详细对比了SeuratDisk、anndataR、schard和sceasy四种高效转换方法。文章从实战出发,剖析了每种方法的原理、操作流程、优缺点及避坑指南,并提供了清晰的选型策略,帮助用户根据数据特点选择最佳方案,实现跨平台数据的无缝衔接。

weixin_29099217的博客 446

java基础注意细节

1.编写java代码时:文件名需要和类名一致,没一句java语句体以分号结束,新手不要漏写;2.编译java程序时:应该切换到保存源代码的文件路径下,进行编译,javac 类名.java(注意不要把后缀.java);这部操作是在源代码文件下,生成.class文件。一次编译到处运行。3.运行程序:是指把.class文件加载到jvm中(java 类名)

weixin_64018571的博客 555

硬件测试之—纹波测试为什么不要使用接地夹子

示波器为什么不推荐使用接地夹

qq_19294353的博客 2988

自动分割和测量混凝土钢筋的思路与原理

该文提出了一种基于PCL库的点云处理系统,用于自动测量混凝土结构中钢筋的几何参数。系统采用多阶段处理流程:首先通过RANSAC算法提取地面并旋转对齐;接着使用区域生长算法分割混凝土结构;然后采用RANSAC线检测识别钢筋,按方向分类;最后通过圆柱拟合和坐标差计算获得钢筋间距、直径和高度差等参数。文章详细介绍了各模块的核心算法,包括地面检测、坐标变换、钢筋识别和几何计算等关键步骤,并分析了主要参数的敏感性。系统通过分层处理和坐标变换确保测量精度,为混凝土结构的无损检测提供了自动化解决方案。

weixin_45196569的博客 679

Java注意事项

4、一个源文件中至多只能声明一个public的类,其他类的个数不限,如果源文件包含一个public类,源文件名必须和其中定义的public的类名相同,且以”.java"为扩展名。6、正确编译后的源文件,会得到相对应的字节码文件,编译器为每一个类生成独立的字节码文件,且将字节码文件自动命名为类的名称,且以“.class”为扩展名。9、在Java中,用花括号划分程序的各个部分,任何部分的代码都必须在花括号内 以“{”开始,以“}”结束,由于编译器忽略空格,所以花括号风格不受限制。内容是:不是英文的符号 ";

qq_57192082的博客 1570

利用SIMULINK搭建一个16QAM调制解调收发系统

1发送模块设计 根据前面介绍的理论知识,我们可以知道16QAM的基本结构,首先我来设计QAM发送段的SIMULINK仿真模块。 图1 16QAM的发送端模块 他的基本工作流程为:将信号通过两路升余弦滤波器,得到滤波以后的信号,滤波器的作用就是为了防止码间干扰。然后将滤波以后的信号和SIN,COS相乘得到调制信号,将调制 下面一一介绍每个模块的具体参数设置以及各个部分信号的波形图。 图2 产生随机数据的信号源 第一部分信号是产生一组随机的数字,作为信源,第二个模块将信号...

FPGA/MATLAB学习教程/源码/项目合作开发 4776

面向对象基础——类和对象(笔记)

类与对象的关系示意图 类和对象的区别和联系 1.类是抽象的,概念的,代表一类事物,比如人类,猫类…, 即它是数据类型. 2.对象是具体的,实际的,代表一个具体事物, 即 是实例. 3.类是对象的模板,对象是类的一个个体,对应一个实例 对象在内存中存在形式(重要的) 属性/成员变量/字段 从概念或叫法上看: 成员变量 = 属性 = field(字段) (即 成员变量是用来表示属性的,授课中,统一叫 属性) 属性是类的一个组成部分,一般是基本数据类型,也可是引用类型(对象,数组)。比如我们前面定义猫类

qq_48385654的博客 497

3️⃣ Coze工作流基础教学(2025年全新版本)

Coze 工作流作为扣子平台的重磅工具,利用可视化节点,如大语言模型、插件、条件判断等,把复杂任务巧妙拆解成多步骤流程。它不仅支持自动化编排,还能实现跨系统协同,有效提升处理效率与输出稳定性。在那些对准确性或格式有严格要求的场景中,比如报告生成、旅行规划,Coze 工作流更是发挥着关键作用。

李同学Lino的博客 5850

[Dify实战] 项目复盘助手:自动拉数据、生成复盘报告

本文介绍如何利用Dify平台构建自动化项目复盘助手,解决传统人工复盘效率低、易遗漏等问题。系统通过自动拉取Git/Jira等数据源,计算关键指标后,由LLM生成结构化复盘报告。文章详细讲解了数据采集、指标计算、Prompt设计等核心模块的实现,并分享了完整Workflow搭建步骤。实践表明,该系统能将复盘耗时从4小时缩短至10分钟,显著提升数据准确率和执行频率。最后总结了数据一致性、输出质量等常见问题的解决方案,强调Dify+LLM组合可实现复盘流程的自动化流水线。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 118

Java 自学(一)——java程序编写的一些注意事项

Java 自学总结

m0_46663678的博客 858

基于STM32L4XX、HAL库的TESEO-LIV4FTR定位模块驱动程序设计

支持多星座系统:GPS、GLONASS、Galileo和北斗。支持NMEA 0183协议和ST专有协议。高灵敏度:-167dBm跟踪灵敏度。低功耗设计,适合物联网和便携设备。内置LNA和SAW滤波器。

zhusl6688的博客 237

[ 转 ]编写高质量代码:改善Java程序的151个建议

记得3年前刚到公司,同桌同事见我无事可做就借我看《编写高质量代码:改善Java程序的151个建议》这本书,当时看了几页没上心就没研究了。到上个月在公司偶然看到,于是乎又找来看看,我的天,真是非常多的干货,对于我这种静不下心的人真是帮助莫大呀。        看完整本书,也记了不少笔记,我就分享一部分个人觉得有意义的内容,也为了方便以后自己温习。--警惕自增陷阱i++表示先赋值后自增,而++i表示先

u011251014的博客 481

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

编写高质量代码:改善Java程序的151个建议(第1章建议1~5)

本系类文章,用来记录《编写高质量代码 改善java程序的151个建议》这本书的读书笔记。由于篇幅原因本人将读书笔记采取分批记忆的方式来进行记录分享,全书共12章,共有151条建议,其中1-3章针对java语法本身提出了51条建议;第4~9章重点针对JDK API的使用提出了80条建议;第10~12章针对程序的性能、开源的工具和框架、编码风格和编程思想等方面提出了20条建议。本人根据此书的目录结构,循序渐进的阅读此书,特记录于此。

jjc4261的博客 238

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

JDK 1.8.0_151 官方版64位下载

JDK 1.8.0_151 官方版64位下载 【下载地址】JDK1.8.0_151官方版64位下载 JDK 1.8.0_151 官方版64位资源,专为Java开发者打造,提供稳定可靠的开发环境。下载后只需简单配置环境变量,即可快速搭建Java开发平台。资源纯净无插件,确保系统安全。无论是初学者还是资深开发者,都能轻松上手...

gitblog_06756的博客 960

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

Github即将破百万的PDF:编写高质量代码改善JAVA程序的151个建议

在通往"Java技术殿堂"的路上,本书将为你指点迷津!内容全部由Java编码的最佳实践组成,从语法、程序设计和架构、工具和框架、编码风格和编程思想等五大方面,对Java程序员遇到的各种棘手的疑难问题给出了经验性的解决方案,为Java程序员如何编写高质量的Java代码提出了151条极为宝贵的建议。对于每一个问题,不仅以建议的方式从正反两面蛤出了被实践证明为十分优秀的解决方案和非常精糕的解决方案,而且还分析了问题产生的根源,犹如醍醐灌顶,让人豁然开朗。

老男孩的架构路 247

Github即将破百万的PDF:编写高质量代码改善JAVA程序的151个建议(1)

Java程序员遇到的各种棘手的疑难问题给出了经验性的解决方案,为Java程序员如何编写高质量的Java代码提出了151条极为宝贵的建议。对于每一个问题,不仅以建议的方式从正反两面蛤出了被实践证明为十分优秀的解决方案和非常精糕的解决方案,而且还分析了问题产生的根源,犹如醍醐灌顶,让人豁然开朗。全书-共12章,第1~ 3章针对Java语法本身提出了51条建议,例如覆写变长方法时应该注意哪些事项、final 修饰的常量不要在运行期修改、匿名类的构造函数特殊在什么。

2301_79987255的博客 1036

编写高质量代码:改善Java程序的151个建议pdf

下载地址:网盘下载内容简介编辑在通往“java技术殿堂”的路上,本书将为你指点迷津!内容全部由java编码的最佳实践组成,对java程序员遇到的各种棘手的疑难问题给出了经验性的解决方案,为java程序员如何编写高质量的java代码提出了151条极为宝贵的建议。对于每一个问题,不仅以建议的方式从正反两面给出了被实践证明为十分优秀的解决方案和非常糟糕的解决方案,...

weixin_30687587的博客 514

转载----编写高质量代码:改善Java程序的151个建议(第1章:JAVA开发中通用的方法和准则___建议1~5)...

阅读目录 建议1:不要在常量和变量中出现易混淆的字母 建议2:莫让常量蜕变成变量    建议3:三元操作符的类型务必一致   建议4:避免带有变长参数的方法重载 建议5:别让null值和空值威胁到变长方法   The reasonable man adapts himself to the world; The unreasona...

dingtuo8134的博客 208

java 151_编写高质量代码:改善Java的151个建议一:1-10

Java变量命名方式:包名全小写,类名首字母全大写,常量全部大写并用下划线分隔,变量采用驼峰命名法1.不要在常量、变量中出现易混淆的字母例如:数字1和字母小写l,数字0和字母小写o,大写O等2.常用值必须唯一(常量值必须在编译期确定,而且在运行期不能修改)例如:不能用随机数或者序列号的算法等当作常量,public static final Int STATE = new Random().next...

weixin_35801556的博客 161

OpenJDK 1.8 (1.8.0.151-1.b12) Windows 64位安装包

OpenJDK 1.8 (1.8.0.151-1.b12) Windows 64位安装包 【下载地址】OpenJDK1.81.8.0.151-1.b12Windows64位安装包 本仓库提供OpenJDK 1.8的Windows 64位安装包下载。OpenJDK(Open Java Development Kit)是Ja...

gitblog_09799的博客 895

《编写高质量代码:改善Java程序的151个建议》 建议18

18. 避免instanceof非  动态

Yokeqi的专栏 1169

怎样才能写出漂亮高质量的java代码?改善JAVA程序的151个建议你看过吗,你想要的答案都在里面了!

怎么写高质量的代码是一个很大的话题,其实面向对象设计的很多原则都能够给我们写代码的时候提供指导,写代码的时候要时刻记得学以致用,而不是敷衍了事,专业的软件工程师必然要能写得一手好代码。

老男孩的架构路 649

《改善Java程序的151个建议》读后感

(a):排序中不是英文的,中文排序可以用: Comparator<Object> col = Collator.getInstance(); Arrays.sort(arr, col); (b):ArrayList是个可变成的数组。默认长度为10,每当长度超过,则调用Array.cofyOf(),一次扩容1.5倍 (c):Set集合,元素不重复,且子类TreeSet自动排序,他下面的lower(xxx)方法,是:给出小于xxx的最大元素,用于求出第二大值 (d):Arrays的asList()方法,可以将数

bug的abc 451
上一篇: thinkphp常用函数
下一篇: java编写的151个注意(2)
freemindhack
博客等级 码龄13年 53粉丝 182原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值