这是我校招中面过的信息量最大的一面,本来是一个小时,最后面完一个半小时,面试官最后反馈还不错。

  1. 自我介绍
  2. 设计模式有了解吗?如何理解“宁用组合,不用继承”,什么时候用组合,什么时候用继承,组合的表现形式是什么?
  3. 了解过泛型吗?类型擦除有知道吗?
  4. c++虚表有了解吗?c++不了解,但是了解 java的多态是通过虚函数表来实现的。虚函数表具体是什么样的?讲讲
  5. AOP有了解过吗?底层是怎么实现的?
  6. 动态代理是什么,静态代理是什么,有什么不一样的地方
  7. 红黑树有了解过吗?B树和B+树有了解过吗?如何理解“平衡二叉树用于内存,B树用于磁盘”,这句话有道理吗?

    B树用于磁盘,每次读取一页,操作系统的局部性原理+预读原理,IO效率比平衡二叉树要高。这句话是有道理的。
  8. 快速排序的思想,时间复杂度。
  9. 二分查找可以用链表实现吗?
  10. 希尔排序有了解吗?
  11. 动态规划是什么?斐波那契数列可以用动态规划来实现,那么二分查找也可以递归实现(子问题),那可以用动态规划来做吗?
  12. 蚁群算法有了解吗。。
  13. TCP/IP第三次握手,为什么要有第三次握手?面试官最后说:之所以加上第三次握手是,有效性,把以前的旧包消失掉。
  14. TCP/IP如何保证数据包的有序性?序列号
  15. TCP/IP说建立连接,这个“连接”是一个很抽象的东西,这个“连接”到底是什么东西?
  16. 有了解过操作系统的COW是什么?copy on write

    答:操作系统的不了解,JAVA容器的有一些了解。写时复制容器。
  17. 为什么要有写时复制这个容器?读不加锁,写复制,提高并发
  18. 进程和线程的区别?
  19. 有句话说“linux中进程和线程差不多”,怎么理解这句话?
  20. 进程通信的方式有哪些
  21. 全双工和半双工是什么
  22. 操作系统的内存屏障有了解过吗?我从volatile关键字来回答
  23. 操作系统的虚拟内存是什么?32位的操作系统的虚拟内存多大?虚拟内存除了可以让内存变大之外,还有什么作用?
  24. c++的内存对齐有了解过吗?为什么要有内存对齐这个操作?
  25. c++的高低位颠倒有了解过吗?
  26. c++ class 和struct有什么区别?struct可以代替class吗?
  27. linux网络的五种IO模型:同步和异步的区别、阻塞和非阻塞的区别
  28. epoll有了解过吗?什么是多路复用?为什么要有多路复用?
  29. spring 开发代码的时候部署在sevelet上,还是tomcat上?
  30. redis中有一个数据结构,叫跳表,有了解过吗?作用是什么?(我回答说是排序和查找),面试官又问了一遍说:确认有排序的功能吗?
  31. 第一道编程题:删除一个字符串中的某个元素。
  32. 第二道编程题 :如何让一个线程等待,直到另外一个线程执行完
  33. 如何让main线程等待,直到另外两个线程执行完再执行主线程?我回答说是JUC包下有一个countdownlatch,应该是回答对了。(下来看了一下,也可以用join来实现)
  34. 悲观锁和乐观锁的概念,各自的使用场景(读多写少,写多读少)
  35. 设计一个秒杀系统,应该用到悲观锁还是乐观锁?在面试官提示下说回答乐观锁。
  36. 有了解过幂等这个概念吗?

    答:在kafka中有了解过,消息只发送一次=at least once+幂等。有在这块用到,但是没有去具体的了解过这个概念。
  37. kafka如何保证消息的顺序消费?

    答:topic是分partation的,多个partation之间是没有办法保证有序的,但是一个partation内的消息是可以保证有序的,所以你可以把想要有序的消息放到一个partation中。
  38. c、c++、java、linux网络编程、操作系统,你的强项是什么?答:java。。。
  39. java中的block有了解过吗?。。。block不就是阻塞的概念嘛。。。面试官这么一说英文,没反应上来。。
  40. java GC的时候有一个逃逸分析,有了解过吗?
  41. 堆和栈到底有什么区别?可以只有堆,没有栈吗?(方法执行体栈帧是完全线程私有,如果在堆分配内存空间,需要加锁机制,太耗费时间)
  42. 虚拟机的内存空间除了堆和栈还有什么?
  43. java的一个线程占多少内存空间?说个大概

    答:首先创建线程时new Thread,所以线程这个对象是在堆中,Thread的run方法,栈帧是在栈中,然后线程如果有ThreadLocalMap的话,ThreadLocalMap也需要占一定的空间。
  44. ThreadLocal变量的作用是什么,其他线程能访问到某个线程的ThreadLocal变量吗?

【JAVA】校招面过的信息量最大的一面的更多相关文章

  1. 最新Java校招面试题及答案

    本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向.在不断的面试中,分类总结了 Java 开发岗位面试中的一些知识点. 主要包括以下几个部分: Java 基础知识点 Java 常见集合 ...

  2. 最新 奥买家java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.奥买家等10家互联网公司的校招Offer,因为某些自身原因最终选择了奥买家.6.7月主要是做系统复习.项目复盘.LeetCo ...

  3. 最新 北森java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.北森等10家互联网公司的校招Offer,因为某些自身原因最终选择了北森.6.7月主要是做系统复习.项目复盘.LeetCode ...

  4. 最新 物易云通java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.物易云通等10家互联网公司的校招Offer,因为某些自身原因最终选择了物易云通.6.7月主要是做系统复习.项目复盘.Leet ...

  5. 最新 梆梆安全java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.梆梆安全等10家互联网公司的校招Offer,因为某些自身原因最终选择了梆梆安全.6.7月主要是做系统复习.项目复盘.Leet ...

  6. 最新 淘友天下java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.淘友天下等10家互联网公司的校招Offer,因为某些自身原因最终选择了淘友天下.6.7月主要是做系统复习.项目复盘.Leet ...

  7. 最新 浩德钢圈java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.浩德钢圈等10家互联网公司的校招Offer,因为某些自身原因最终选择了浩德钢圈.6.7月主要是做系统复习.项目复盘.Leet ...

  8. 最新 识装java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿. 识装等10家互联网公司的校招Offer,因为某些自身原因最终选择了 识装.6.7月主要是做系统复习.项目复盘.LeetCo ...

  9. 最新 学霸君java校招面经 (含整理过的面试题大全)

    从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.学霸君等10家互联网公司的校招Offer,因为某些自身原因最终选择了学霸君.6.7月主要是做系统复习.项目复盘.LeetCo ...

随机推荐

  1. JavaScript学习系列博客_26_JavaScript 数组的一些方法

    数组的一些方法 - push() - 用来向数组的末尾添加一个或多个元素,并返回数组新的长度 - 语法:数组.push(元素1,元素2,元素N) - pop() - 用来删除数组的最后一个元素,并返回 ...

  2. 循序渐进VUE+Element 前端应用开发(19)--- 后端查询接口和Vue前端的整合

    循序渐进VUE+Element 前端应用开发的系列文章中,前面介绍了系统各个功能的处理实现,本篇随笔从一个主线上介绍前后端开发的整合,让我们从ABP框架后端的查询接口的处理,前端API接口调用的封装, ...

  3. git使用小结(本地分支与远程分支、git命令)

    git git 是一个版本管理系统(VCS),可以在任何时间点,将文档的状态作为一份更新记录保存起来,并且在任意的时间点,恢复更新记录 版本管理 版本管理是一种记录文件变化的方式,方便查阅特定版本号的 ...

  4. IDEA 代码自动补全/自动联想 功能

    IDEA 的代码补全/自动联想功能,可以仅仅输入几个字母,自动补全一整段代码,非常舒服. 代码自动联想功能在 设置 -> Editor -> Live Templates 查看,很多都非常 ...

  5. Java枚举简述

    Java 枚举(enum) Java 枚举是一个特殊的类,一般表示一组常量,比如一年的 4 个季节,一个年的 12 个月份,一个星期的 7 天,方向有东南西北等. Java 枚举类使用 enum 关键 ...

  6. angular实现地区三级联动

    <!DOCTYPE html><html ng-app="myapp"> <head> <meta charset="UTF-8 ...

  7. app转iap

    ios打包ipa的四种实用方法(.app转.ipa) http://blog.csdn.net/oiken/article/details/49535369 手动压缩改后缀方式 这种方式与4.1的方法 ...

  8. 使用docker部署hadoop集群

    最近要在公司里搭建一个hadoop测试集群,于是采用docker来快速部署hadoop集群. 0. 写在前面 网上也已经有很多教程了,但是其中都有不少坑,在此记录一下自己安装的过程. 目标:使用doc ...

  9. windows下TOMCAT对内存使用的设置

    1.打开TOMCAT目录 E:\备份\apache-tomcat-8.5.50-windows-x64\apache-tomcat-8.5.50\bin catalina.bat----------- ...

  10. 【Nginx】面试官:给我讲讲Nginx如何实现四层负载均衡?

    写在前面 这次又被问到Nginx四层负载均衡的问题了,别慌,我们一起来细细分析这个看似简单的问题. 如果文章对你有点帮助,请关注 冰河技术 微信公众号,点赞.在看.留言和转发,大家的四连是我持续创作的 ...