面试题整理(更新中)

  1. 常用5大接口和实现类

  2. 线程池的参数是怎么计算的
    https://www.jianshu.com/p/2a80237c3c60

  3. threadlocal是从什么时间开始创建,什么时间回收。
    https://www.zhihu.com/question/21709953

  4. TCP与http之间区别。UDP与TCP区别,TCP与http区别
    https://www.cnblogs.com/baizhanshi/p/8482612.html

  5. int fol (int n){n<2 return n;
    return fol(n-1)+fol(n-2);}问返回值是多少
    n=5

  6. jdk8新特性在项目中的应用

  7. 线程与进程的区别,举例3.项目中用到的设计模式并书写,

  8. 递归题 n=5,int fol (int n){n<2 return n;
    return fol(n-1)+fol(n-2);}问返回值是多少

  9. String.string buffer. string builder的区别

  10. string底层原理

  11. redis应用场景,为啥要使用它,你对持久化机制的理解

  12. sql分库分表

  13. es是怎么分表,你是怎么理解倒排索引

  14. 一段关于前后端的翻译,jsp Dom…

  15. 线程池怎么理解的,执行流程

  16. CountDownLaunch用法:https://www.jianshu.com/p/c844497dbdea?mType=Group

  17. Java三大特性

  18. Jvm虚拟机 内存结构、算法、垃圾回收

  19. 集合类 链表和数组的区别 map和set的区别

  20. 二分查找代码

  21. 网络、操作系统

  22. String,StringBuffer,StringBuilder区别,哪个是线程安全,哪个更高效

    • String时被static, final修饰的,在拼接和裁剪过程会产生中间变量,String 的初始值就是 16,扩容会产生多重开销,因为要抛弃原有数组,创建新的(可以简单认为是倍数)数组,还要进行 arraycopy。
    • StringBuffer是通过add或append将字符串拼接到已有序列的指定位置或末尾,它是线程安全的
    • StringBuilder是1.5中新增的,与StringBuffer没有很大区别,但它去掉了线程安全,可以减小开销, 如无线程安全需求,推荐使用StringBuilder
    • 为了实现修改字符序列的目的,StringBuffer 和 StringBuilder 底层都是利用可修改的(char,JDK 9 以后是 byte)数组,二者都继承了 AbstractStringBuilder,里面包含了基本操作,区别仅在于最终的方法是否加了 synchronized。
    • 延申:jdk1.6提供了intern()方法,将字符串缓存到了永久代,只有发生FullGC才会被回收,后来jdk1.8将字符串缓存到了元数据区
    • 创建的字符串会被放到常量池,直接赋值会先去常量池查找,没有则new,直接new生成的话不检查常量池中是否存在。那么上面提到的65534其实是常量池的限制。
    • Integer.MAX_VALUE ,这个值约等于4G,在运行期,如果String的长度超过这个范围,就可能会抛出异常
  23. HashMap ThreeMap 结构,哪个是有序的

    • HashTable 是同步的,键和值不能时null,它扩展了Dictionary类
    • HashMap 不是同步的,键和值可以为null,它扩展了AbstractMap
    • TreeMap 是基于红黑树提供访问顺序的一种Map,时间复杂度未O(log(n)),顺序可以由Compatator或者自然顺序来决定
    • LinkedHashMap 遍历顺序就是插入顺序
  24. List HashSet区别

  25. 三目运算符自动装箱拆箱造成NPE

  26. DispatherService初始化过程

  27. SpringBean的加载过程

  28. Spring整合MyBatis

  29. springbean的生命周期

  30. maven的生命周期

  31. MyBatis缓存有几个级别,作用域类型,默认是什么

  32. SpringMVC 的工作原理 (11步)

  33. 谈谈你对SpringMVC的理解

  34. SpringMVC 常用注解都有哪些?

  35. Spring 的常用注解

  36. 如何开启注解处理器和适配器?

  37. 如何解决 get 和 post 乱码问题?

  38. 谈谈你对 Spring 的理解 (8条)

  39. Spring 中的设计模式(解释)

  40. SpringBoot持久化如何实现

  41. SpringCloud分布式整体解决方案

  42. Docker远程调用框架RPC,Doubbo,zk注册中心,Redis穿透雪崩 如何解决

  43. JVM,CPU使用率高100%,如何进行排查 查看有多少线程的命令

  44. CPU与线程数关系

  45. 多线程优缺点,最高有几条线程

  46. JVM运行机制:加载,回收GC,运行时数据,参数调优

  47. 故障经验:线上OOM,CPU,内存溢出

  48. 缓存:内存缓存、缓存框架、其他缓存技术

  49. 订单如何防重,如何校验

  50. 定时任务:quartz调度工厂,JobFactroyBean开启任务,Trigger触发任务

  51. 如何实现定时任务批量

  52. sql多次循环给内存带来什么后果,查询为什么要添加事务

  53. 订单表1-10亿随机删除两个

  54. 要搭建一套大数据物联网分析平台技术原型你都选什么

  55. Java SPI机制

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值