2月11日 阿里巴巴Java开发手册 读后感
该手册分为几个部分:
印象深刻的几点:
(五)集合处理
2.【强制】ArrayList的subList结果不可强转成ArrayList,否则会抛出ClassCastException 异常:java.util.RandomAccessSubList cannot be cast to java.util.ArrayList ; 说明:subList 返回的是 ArrayList 的内部类 SubList,并不是 ArrayList ,而是 ArrayList 的一个视图,对于SubList子列表的所有操作最终会反映到原列表上
5. 【强制】使用工具类 Arrays.asList()把数组转换成集合时,不能使用其修改集合相关的方 法,它的 add/remove/clear 方法会抛出 UnsupportedOperationException 异常。 说明:asList 的返回对象是一个 Arrays 内部类,并没有实现集合的修改方法。Arrays.asList 体现的是适配器模式,只是转换接口,后台的数据仍是数组。
(六)并发处理
5. 如果是 JDK8 的应用,可以使用 Instant 代替 Date,LocalDateTime 代替 Calendar, DateTimeFormatter 代替 Simpledateformatter,官方给出的解释:simple beautiful strong immutable thread-safe。
6. 【强制】并发修改同一记录时,避免更新丢失,要么在应用层加锁,要么在缓存加锁,要么在 数据库层使用乐观锁,使用 version 作为更新依据。说明:如果每次访问冲突概率小于 20%,推荐使用乐观锁,否则使用悲观锁。乐观锁的重试次 数不得小于 3 次。
待学习,未理解
六10.countDownLatch(我的学习笔记)
六11.Random
六12.volatile
状态模式实现超过3层的if-else
二6.覆盖索引
最新文章
- C#开发微信门户及应用(33)--微信现金红包的封装及使用
- MVC4做网站后台:用户管理 ——用户组 2、查看、修改、删除用户组
- 主题:Android、iPhone和Java三个平台一致的加密工具
- Android如何让真机显示debug log的调试信息
- php 算法之切割数组,不用array_chunk(),算法之二,取数组的差值,不用array_diff()
- logstash tomcat catalina.out zabbix 插件不会引起崩溃
- 求和问题(DFS)
- hihoCoder #1082 : 然而沼跃鱼早就看穿了一切(字符串处理)
- iTOP-开发板-MiniLinux-C程序调用shell命令
- Oracle 10G 安装文档
- Mac 安装zsh
- SVN中图标符号的含义
- js document.activeElement及使用
- 310实验室OTL问题(2)
- SQL优化的部分内容
- POJ3057:Evacuation——题解
- Unity3d依赖于平台的编译
- P1855 榨取kkksc03
- 转怎么让VI支持中文显示
- Nginx-安装依赖及配置详解