public、private、protected和default的区别
当前类 | 同一包 | 子类 | 其他包 | |
---|---|---|---|---|
public | Y | Y | Y | Y |
protected | Y | Y | Y | N |
default | Y | Y | N | N |
private | Y | N | N | N |
数据库执行引擎InnoDB和MySIAM的区别
InnoDB | MySIAM |
---|---|
支持事务 | 不支持事务 |
行锁 | 表锁 |
支持外键约束 | 不支持外键约束 |
不支持全文索引 | 支持全文索引 |
表空间较大 | 表空间较小 |
事务ACID原则
- 原子性
- 一致性
- 隔离性
- 持久性
线程死锁的四个条件
- 互斥条件:一个资源每次只能被一个线程访问
- 请求与保持:一个进程因请求资源而阻塞式,对以获得的资源保持不放
- 不剥夺条件:进程获得的资源,在未使用完成之前,不能被强行剥夺
- 循环等待:若干个进程之间形成一种头尾相接的循环等待资源关系
Java8的新特性
- 函数式接口
- 接口默认方法
- Lambda表达式
- 方法引用
- stream流
- 日期时间类库