数新网络一面
40min 问的挺多但是总体问的不太难
- 知道哪些集合?(ArrayList LinkedList HashMap HashSet HashTable TreeSet Vector ConcurrentHashMap CopyOnWriteArrayList CopyOnWriteArraySet )
- 说下ArrayList的扩容机制(说的不好,有点忘了,复习下)
- 详细说下ArrayList什么时候会扩容?(我说满了就会扩容,面试官说有个负载因子我当场人傻了...我心想不是HashMap才有负载因子吗,ArrayList哪来的负载因子...我就试探性问是有个0.75的负载因子吗,面试官说可以自己设置...会提前判断,不会满了才扩容,而是提前判断..)
无语了,我当时真的还真以为我记错了,给这个老六带进去了==
- 说下HashMap的数据结构(1.7 数组+链表 1.8 数组+链表/红黑树)
- 说下你对红黑树的理解节点都为红节点或黑节点根节点黑色叶子节点为null的黑色节点不能有连续的两个红色节点每个节点下的每条路径都有相同数量的黑色节点使用变色和选择保持平衡和AVL对比
- Java中创建线程的方式(继承Thread类 实现Runnable Callable 线程池)
- 用过哪些线程池(不使用自带的三种 自定义线程池)
- 创建线程池的7个参数(核心线程池数 最大线程池数 线程过期时间 时间单位 阻塞队列 线程工厂 拒绝策略)
- 做过线程池调优吗?(根据当前CPU密集型还是IO密集型任务设定核心线程池数量)
- Spring注册Bean注解?(@Component @Repository @Service @Controller @Bean @Configuration)
- 谈谈IOC的理解
- Bean的生命周期(实例化 属性赋值 初始化 销毁 具体的忘了)
- 说说数据库的设计原则(3范式讲了下 反范式讲了下)
- MySQL有哪些索引(主键索引 普通索引 唯一索引 组合索引 全文索引 空间索引)
- InnoDB数据结构(B+树 对比AVL B-的优势)
- MySQL中的事务隔离?(RU RC RR 可串行化)
- MyBatis怎么防止SQL注入?(用#{} 而不用 ${})
- JVM中的堆分区(1.7 新生代 老年代 永久代 1.8 新生代(伊甸区 幸存区) 老年代 + 直接内存的元空间)
- 说说类加载过程(加载 链接<验证 准备 解析> 初始化 老是记不住当时忘了==)
- Linux常用命令(top vmstat ps-ef free df iostat ifstat)
- 说几个docker常用命令
- systemctl start docker 启动docker
- docker pull
- docker ps -a
- docker run
- docker start /restart /stop
- docker rmi
- redis应用场景有哪些?
- 分布式锁用过吗(没有 感觉这块问的频率挺高的,还是得花时间补补==)
- redis做缓存是怎么更新数据的(CAP 先更新数据库,再把缓存删了 当时说反了 ==)
- 同时用Caffeine和Redis不会有冗余吗?
- QPS是在什么配置机子上测的,多少并发
- 敏感词检测替换如何实现的?(前缀树 快慢指针)
- 项目中说一个你觉得最有挑战的点?(这种开放式题目我其实是最讨厌的,最好提前准备==)
- 权限隔离怎么做的?(Spring Security)
- 看你有个Python的项目,问了个pandas的data...?(python忘光光了==)
反问
- 有什么建议给到我?
- 公司业务(大数据相关)
- 面试有几轮(可能3-4轮)