因为换工作,特此将面试过程中遇到的面试问题记录如下:
1.JAVA对象的生命周期:
创建阶段-应用阶段-不可见阶段-不可达阶段-收集阶段-终结阶段-对象空间重新分配阶段
https://blog.youkuaiyun.com/u010042858/article/details/70198779
2.面向对象的三大特征和五大原则
三大特征:封装,继承,多态
五大原则:单一职责原则,开放封闭原则,替换原则,依赖倒置原则,接口隔离原则,除此之外,还有一个良性依赖原则
https://blog.youkuaiyun.com/zhang2531/article/details/52052453
3.list,map各有哪几种实现。各自的优缺点和使用场景
map:
map是一种把键对象和值对象关联起来的容器
map的实现有:hashmap,treemap,weakmap。
hashmap用到了hash码的算法,可以用于快速查找一个键,内部无序,treemap则是对键按顺序存放
list:
list的实现有:linkedlist,arraylist,vector.
arraylist是基于动态数组实现的线性表实现,,不是线程安全的
linkedlist添加删除操作效率高,但get,set比较慢,非线程安全
https://blog.youkuaiyun.com/qq_27093465/article/details/50973442
4.mysql的sql执行计划: