首页 > 其他 > 详细

记录一下

时间:2019-11-17 13:18:10      阅读:78      评论:0      收藏:0      [点我收藏+]

记录一下面试时问的那些问题:

1.java基础

  hashmap的数据结构和扩容原理,jdk1.7和1.8的区别

  concurrentHashmap的数据结构和扩容原理,jdk1.7和1.8的区别

  CopyOnWriteArrayList的原理

  ThreadLocal原理

  stringbuffer和stringbuilder的区别

  arraylist和linkedlist的区别

  volatile关键字

  synchronized关键字

  lock和synchronized的区别

  reentrantlock可重入锁的实现原理(sync,公平锁和非公平锁)

  jdk1.8的lambda表达式

  Java的8种数据类型字节数和取值范围

  深拷贝和浅拷贝

  java中用什么数据类型存储数据:BigDecimal存储或者直接以分为单位存储int型

     子类和父类之间的静态代码块、静态方法、非静态代码块、构造函数之间的执行关系

  序列化

  Java值引用和类型引用

  红黑树和二叉平衡树区别

  悲观锁和乐观锁,乐观锁出现的问题

2.多线程

  线程的状态

  线程的几种实现方式

  线程和进程的区别

  为什要用线程池

  通过线程池创建线程的几种方式

  线程池的核心参数,执行过程

  拒绝策略

  如何获取多线程返回的值FutureTask

  CountDownLatch、CyclicBarrier、semaphore

  java中多线程执行时,为何调用的是start()方法而不是run()方法

  死锁

  线程安全: volatile可见性和有序性,原子性要么加锁要么原子操作如atmoticInteger

  线程间通信和进程间通信方式

3.设计模式(单例和动态代理最常问)

  单例模式:饿汉式和饱汉式双double检查

  代理模式:静态代理、动态代理(jdk动态代理和cglib代理实现原理)

  策略模式

  观察者模式

  适配器模式

4.Spring相关

  IOC

  AOP

  bean的生命周期

  Spring怎么解决循环依赖的

  Spring事务传播机制

  springboot和Spring什么关系

  springboot启动原理

  springmvc执行过程、拦截器和过滤器分别在哪一步执行

5.mysql

  innodb和myisam存储引擎的区别

  索引的数据结构

  索引的种类

  覆盖索引

  聚簇索引和非聚簇索引

  B+ tree数据结构、和b tree的区别

  建立索引的原则

  联合索引、最左匹配原则

  联合索引失效条件

  索引的优化

  如果主从,怎么解决主从延迟

  mysql的四个特性

  mysql的隔离级别以及对应产生的三种问题

  mysql怎么解决缓读的

  select--from--where--group by--having--order by 关键字的执行顺序

6.redis

  redis的五种数据结构以及适用场景

  持久化方式

  数据缓存一致性

  string的底层原理

  zset的实现原理(跳跃表

  redis的淘汰策略

  redis的删除数据:立即删除和惰性删除

  redis缓存雪崩和缓存穿透

  redis为什么这么快

  redis的集群和哨兵机制 

7.jvm

  数据运行时区域

  垃圾回收算法

  垃圾回收器:重点cms和g1

  java内存溢出和泄漏

  gcroot

  fullgc和minor gc

  类加载机制

  四种引用类型

  内存分配策略与回收策略

  fullgc触发条件

  双亲委派机制

  Java内存模型

  java调优(没有略)

  一个对象从新生代进入老年代的过程

8.消息中间件rabbitmq或kfaka

  我没用过,简历上没写,面试基本也就没问。

9.git

  git常用命令

  git rebase

  git 回滚git reset和git revert区别

  git开发时的流程

10.mybatis

  #和&的区别,什么时候必须用&

  mapper的实现原理

11.数据结构与算法

  算法:七种排序:重点冒泡排序和快排

  数据结构:字符串、数组、队列、栈、树、链表

  剑指offer

112其他

  秒杀:限流+缓存+队列方式实现。限流限制达到后端服务器的qps,常用限流算法;秒杀活动库存缓存在redis,通过redis原子递减防止库存超卖;redis缓存扣减成功,放入队列中,达到削峰的目的。

  redis分布式锁:set(key,value,NX,PX,longtime)替代以前的setnx+expire,或者用redission的redLock;释放锁注意事项;如果执行过程过长,超过锁过期时间怎么办;

  zookeeper分布式锁(不会,没用过zookeeper)

  https原理

  最近有没有在看一些技术

  未来职业规划

  下份工作的期待

  

  

 

      

记录一下

原文:https://www.cnblogs.com/heqiyoujing/p/11875828.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!