面试

面试

  1. JDK和JRE有什么区别? JDK包含java开发环境和运行环境、JRE包含运行环境
  2. ==和equals的区别? 值相等和引用相等
  3. Hashcode相等时equals相等吗? 不同
  4. final的作用? 修饰的类不能继承、修饰的方法不能重写、修饰的变量必须初始化且不能修改
  5. Math.round(-1.5)等于多少? -1
  6. Java的基本数据类型? 八种
  7. Java中的字符串操作符?String、StringBuilder和SringBuffer
  8. String str=“i”和String str=new String(“i”)一样吗? 内存分配方式不同,前者常量池后者堆内存
  9. 实现字符串反转? reverse方法
  10. String常用方法?
  11. 抽象类和抽象方法? 抽象类不一定有抽象方法
  12. 普通类和抽象类? 普通类不能包含抽象方法但可以直接实例化
  13. 抽象类能用final修饰吗? 不能
  14. 接口和抽象类的区别?
  15. IO流分几种? 输入输出 or 字符字节
  16. BIO、NIO和AIO区别? https://blog.csdn.net/skiof007/article/details/52873421
  17. Files常用方法?
  18. Java容器有哪些? collection(List、Queue、Set)、Map
  19. Collection和Collections的区别? 前者接口、后者工具类
  20. List、Map和Set的区别?
  21. HashMap和HashTable的区别? 线程安全
  22. HashMap和TreeMap的区别? 有序遍历
  23. HashMap的实现原理? 散列表、Jdk1.8后散列表+红黑树
  24. HashSet的实现原理? 底层HashMap(key:HashSet值;value:Persent)
  25. ArrayList和LinkedList区别? 数据结构的不同
  26. 如何实现数组和List的转换?
  27. ArrayList和Vector的区别? 同步与否
  28. Array和ArrayList的区别?
  29. Queue中poll和remove区别?
  30. 线程安全的集合类有哪些? vector、stack、hashtable、enumeration
  31. 迭代器Iterator是什么? 一种设计模式、对象
  32. Iterator使用及其特点?
  33. Iterator和ListIterator区别?
  34. 并行和并发的区别?
  35. 线程和进程的区别?
  36. 守护线程是什么? 服务线程
  37. 创建线程的方式?
  38. Runable和Callable有什么区别? 是否有返回值
  39. 线程有哪些状态? 创建、就绪、运行、阻塞、死亡
  40. Sleep和Wait的区别? 机锁释放
  41. Notify和NotifyAll的区别?
  42. Run和Start的区别?
  43. 创建线程池的方式?
  44. 线程池的状态? Running、ShutDown、Stop、Tidying、Terminated
  45. 线程池中Submit和Execute的区别?
  46. 线程安全的体现?怎样保证多线程运行? 原子性、可见性、有序性
  47. 多线程锁的升级原理? 无状态锁、偏向锁、轻量级所、重量级锁
  48. 什么是死锁?
  49. 如何防止死锁? 避免四个必要条件(互斥条件、请求和保持条件、不可剥夺条件、环路等待条件)
  50. ThreadLocal是什么及其使用场景?
  51. Synchronized底层实现原理?
  52. Synchronized和Volatile的区别?
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值