1.7 KiB
1.7 KiB
- finally #card #java
- java关键字之一,用于构建try-catch-finally语句块
- 用于释放资源,关闭连接等
- finally中的内容会在try和catch结束前执行
- final #card #java
- java修饰符关键字
- 可以修饰变量,类,方法,修饰后的变量不可以被修改,方法无法重写,类无法继承
- finalize() #card #java
- Object中的一个方法
- 当对象要被回收时会被调用,执行一些资源清理的操作
- 调用的时间是不确定的
-
手写单例模式 #card #java
- 用了redis哪些数据结构 #card #java
- string,存验证码,缓存常用的一些数据
- hash,存储一些购物车内容
- redis持久化机制 #card #java
- redis持久化分为RDB和AOF
- RDB
- 存储的是某一时刻内存的镜像副本
- 对内存占用要求高,创建副本的时候需要有一半的内存
- 创建的速度较慢,但恢复的速度快
- AOF
- 日志追加的方式,可以设置不同的频率,no(操作系统决定,一般30s),1S,Always
- 存储的不是数据,而是操作命令
- 存在重写的过程,实时性较好,恢复的速度较慢
- redis事务 #card #java
- 原子性,可以让一组命令同时按照顺序执行
- 没有回滚以及隔离,出错后出错的命令不会执行,其他命令都会执行
- 需要配合lua脚本来保证执行的时候没有其他命令或lua脚本插入执行
- redis单线程问题,哪个版本开始有多线程 #card #java
- 使用单线程可以避免线程间上下文切换带来的额外开销
- 6.0引入来IO多线程,但是主线程还是单线程
- java8跟7有什么变化 #card #java
- completeablefuture
- locadatetime
- stream流
- optional类
- concurrentHashMap
- 红黑树 #card #java