IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 学习编写高质量JAVA代码 -> 正文阅读

[Java知识库]学习编写高质量JAVA代码

最近正在阅读《编写高质量代码:改善Java程序的151个建议》,顺便做个笔记记录一下以及自己工作中遇到事例,不会按照原书顺序,平时自己比较常遇到先写。

一、开发通用准则

1、不要在常量或者变量中使用容易混淆的字母、更加不要用拼音和英文混用

包名小写、类名首字母大写、常量全部大写并用下划线隔开、变量驼峰命名、不能以下划线或者美元符号开头或者结尾,遵守这些基础的Java编码规范。

例:long变量11写成11l,代码中很容易误以为是111,这地方最好使用写成11L。

2、常量值不要变动

3、三元操作符的类型务必一致

三元操作符如果类型不一样,会进行自动类型转换。

4、子类覆写父类必须符合规矩

a、重写不能缩小访问权限;b、参数必须相同(类型、个数、形式必须相同);c、返回类型必须和被重写方法相同或是其子类;d、重写方法可以不抛出异常或者抛出更少的异常,但是不可以抛出新的异常,或者超出父类的异常。

5、break不可忘记写

switch...case使用中一定要记得加break,(我的习惯是写完case马上写break,之前出过没有写break的BUG,在代码量大还有循环的情况下,debug一步步走找问题也是非常耗时间,同事看了一眼说你没写break,一下才发现。我们编程过程中,特别出bug后加上疲劳,很容易头脑不清晰,很难以一个客观角度看自己代码。)

二、基本类型

1、用偶数做判断、不使用奇数

比如判断一个数不能被2整除,以偶数来判断更不会错误。例如:用奇数判断,-1对2取余会是偶数,大家可以试试。

2、用整数类型处理货币、需要处理浮点数使用BigDecimal

3、涉及类型转换最好用主动申明方式,不推荐让系统默认转换,容易出不必要BUG。

4、注意类型的边界

例:判断一个int值是否<1000,正常来说没问题的,但是如果你输入了2147484647(int类型最大值2147483647),超过了int范围1000值,数字越界会是检验失效。

单元测试中,我们需要去做边界测试,有三个值是必须测试的,0、负的最小值、正的最大值,如果这三个数据都没有问题,方法才是可靠的。

5、使用包装类型需要注意null值,装箱过程中,装入null值是没有问题的,但是拆箱过程中,涉及类型转换,null无法装换,会报空指针错误。

6、包装类型不能用<、>、== 比较大小,这些符号只能用于数字类型判断,包装类型判断的是引用,而不会是大小。

未完待续...

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2022-02-07 13:35:18  更:2022-02-07 13:36:51 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 11:34:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码