Java 开发手册要点抽认卡

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/37

flashcard set

Earn XP

Description and Tags

根据《Java 开发手册》部分内容整理的填空式抽认卡,共 38 张,覆盖基本数据类型、BigDecimal 使用、POJO 规范、日期时间、集合处理、并发控制、控制语句等核心强制/推荐规则。

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

38 Terms

1
New cards

【强制】任何货币金额必须以最小货币单位且类型来存储。

整型(int/long)

2
New cards

【强制】浮点数等值判断不能使用“==”或 equals,应通过设定或使用 BigDecimal。

误差范围

3
New cards

【强制】使用 BigDecimal 比较相等时,应调用 __ 方法,而非 equals()。

compareTo()

4
New cards

【强制】禁止使用 构造方法把 double 转成 BigDecimal,以免精度丢失。

BigDecimal(double)

5
New cards

【强制】POJO 类属性必须使用 数据类型,而非基本类型。

包装

6
New cards

【强制】数据库 bigint 字段对应 Java 属性应使用 类型。

Long

7
New cards

【强制】定义 DO/DTO/VO 时,属性不要设置 _ 值。

默认

8
New cards

【强制】序列化类新增属性时,不要修改 _ 字段,否则可能反序列失败。

serialVersionUID

9
New cards

【强制】构造方法内部禁止加入 逻辑,如需初始化请放入 init 方法。

业务

10
New cards

【强制】POJO 类必须编写 _ 方法,便于异常时打印属性值。

toString()

11
New cards

【强制】同一属性不能同时存在 isXxx() 和 () 方法,避免框架取值冲突。

getXxx

12
New cards

【推荐】使用 String 的 split 结果数组时,要检查最后一个分隔符后是否有内容,否则可能抛出 ___。

IndexOutOfBoundsException

13
New cards

【推荐】循环体内拼接字符串应使用 __ 的 append()。

StringBuilder

14
New cards

【推荐】需要保证变量不可重新赋值时,可使用 关键字。

final

15
New cards

【强制】日期格式化时,年份必须使用小写

y

16
New cards

【强制】日期格式中,大写 M 表示, 小写 m 表示; 大写 H 表示24小时制, 小写 h 表示12小时制。

月份, 分钟

17
New cards

【强制】获取当前毫秒数应调用 __ 方法,而非 new Date().getTime()。

System.currentTimeMillis()

18
New cards

【强制】程序中禁止使用 java.sql.Date、java.sql.Time 及 __ 类。

java.sql.Timestamp

19
New cards

【强制】不要在代码中写死一年等于 天,需动态获取年份天数。

365

20
New cards

【强制】覆写 equals 时必须同时覆写 __。

hashCode()

21
New cards

【强制】判断集合是否为空应使用 _(),而不是 size()==0。

isEmpty

22
New cards

【强制】Collectors.toMap 转换时必须提供 __ 参数,以处理 key 冲突。

mergeFunction (BinaryOperator)

23
New cards

【强制】ArrayList 的 subList 结果不能强转成 _,否则会 ClassCastException。

ArrayList

24
New cards

【强制】对 Map 的 keySet()/values()/entrySet() 返回集合不能执行 操作,否则抛异常。

添加元素

25
New cards

【强制】Collections.emptyList()、singletonList() 返回的集合是 __,禁止增删元素。

不可变(immutable)

26
New cards

【强制】集合转数组时应调用 toArray( new T[0] ),若使用无参 toArray 后强转会抛 __。

ClassCastException

27
New cards

【强制】foreach 循环中不要直接 remove 元素,需使用 _ 的 remove()。

Iterator

28
New cards

【强制】自定义 Comparator 必须满足对称、传递、比较相等一致三条规则,否则 _ 会抛异常。

Arrays.sort / Collections.sort

29
New cards

【推荐】初始化 HashMap 时,如无法确定大小可先设置容量为 (默认值)。

16

30
New cards

【推荐】遍历 Map 时应优先使用 方式,效率高于 keySet。

entrySet

31
New cards

【强制】线程池应通过 __ 构造,而非 Executors 工厂方法。

ThreadPoolExecutor

32
New cards

【强制】SimpleDateFormat 是线程不安全的,若定义为 static 必须配合 或 ThreadLocal。

锁同步

33
New cards

【强制】自定义 ThreadLocal 变量用完后必须调用 _ 进行回收。

remove()

34
New cards

【强制】对多个资源加锁时须保持一致的 顺序,避免死锁。

加锁

35
New cards

【强制】finally 块必须关闭资源,即使发生异常也需

try-catch

36
New cards

【强制】在 switch 语句块中必须包含 _ 分支并放在最后。

default

37
New cards

【强制】if/for/while 等语句体必须使用 包裹,即使只有一行代码。

大括号

38
New cards

【推荐】表达异常分支时,可使用“卫语句”提前 return,而少用多层 结构。

if-else