2021年4月份面试遇到的一些问题(3年工作经验)

话不多说,直接上题材。(若想要答案,请看评论)
一、JAVA(分为基础题型和进阶题型)
会有延伸,建议熟读以下问题涉及到的源码。
A 基础题型

  1. 面向对象的特性。
  2. JAVA如何实现跨平台。
  3. 对类加载过程的理解。
  4. 字符串常量和字符型常量的区别。
  5. 自动装箱和拆箱。
  6. 值传递和引用传递的区别。
  7. 数据类型有哪些。
  8. public、private、protected、默认关键字的作用范围
  9. int和Integer的区别。
  10. 局部变量和成员变量的区别。
  11. 重载和重写的区别。
  12. String为什么是线程安全的。
  13. String str = “abc” 和 String str = new String(“abc”)是一样的吗?为什么?
  14. equals()和==的区别。
  15. Set、List、Map的区别。
  16. HashMap、HashSet、Hashtable、ConcurrentHashMap的区别以及它们的底层原理,扩容机制,存储和获取元素的过程。
  17. hashCode()和equals()的关系,什么情况下需要重写这两个方法。
  18. String、StringBuilder、StringBuffer三者的区别。
  19. 普通类、抽象类和接口的区别。
  20. 对迭代器的理解。
  21. ArrayList、LinkedList、Vector的区别。
  22. &和&&的区别。
  23. BIO、NIO、AIO三者的区别。
  24. synchronized和RetrantLock的区别
  25. 用过哪些线程池,线程池的底层原理和作用。
  26. 锁机制的理解
  27. 对ThreadLocal、volatile、static、final等关键字的理解。
  28. 线程安全 、线程异步、线程同步的理解。
  29. 用过哪些线程同步的方法。
  30. sleep()和wait()的区别。
  31. final、finally、finalize()三者的区别。
  32. throw和throws的区别。
  33. 遇到过哪些异常。
  34. Error和和Exception的区别。
  35. 反射的使用和作用。
  36. 线程有哪些状态及状态间的转换关系。
  37. 栈和堆的区别。
  38. 对JVM内存模型的理解。
  39. 引用类型有哪些。
  40. 线程共享和线程私有区域。
  41. 什么是死锁,如何避免。

B 进阶题型
42. 对偏向锁、轻量级锁、重量级锁的理解。
43. 对CAS、QPS理论的理解。
44. 如何避免ABA问题。
45. 做过哪些代码优化。
46. 对JVM的理解。
47. 遇到过哪些内存溢出,如何解决。
48. 做过哪些内存优化。
49. 对GC机制的了解。
50. 如何判断对象是否已被回收。

二、框架

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

徐先生Paul

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值