base深圳,新技术院,智能座舱开发,做车机系统的,算安卓开发,主要语言是Java。9.24早上在线下先面了一下,应该是确定岗位,我说自己可以做Java、自动驾驶(硕士课题相关)方面。然后没多久就约了下午的电话面。全程80min1.静态内部类与非静态内部类的区别2.接口和继承的关系3.介绍一下多态,多态的应用场景,实际项目哪里用到了多态?4.为什么需要线程池?线程池的关键参数有哪些?运作流程是什么?用内置线程池有什么缺点?你用了哪个线程池?5.线程间的通信方式有哪些,注意不是进程?6.线程间通过共享内存进行通信的具体步骤是什么?举个例子?7.ThreadLocal的原理是什么?8.JVM的内存模型?详细介绍一下每一个内存区域的定义、作用,他们之间有什么关系?堆和方法区分别存放什么?9.Java的垃圾回收机制?垃圾回收哪些内存区域?堆和方法区具体怎么垃圾回收?回收什么?10.介绍一下Java的锁机制,偏向锁的执行流程是什么?用过syn中的重量级锁吗?11.synchronized锁的原理是什么?syn锁加在类和加在方法上有什么区别?项目中有用过锁吗?都是用在什么地方?怎么加的锁?12.双亲委派模型是什么?有什么作用?有什么类加载器?具体的双亲委派流程是什么?类加载器之间的加载顺序是什么?13.HashMap的底层原理,1.7的结构是什么样的?14.项目中新建一个Java类的时候,你都是怎么考虑的?关注哪些地方?15.你项目的代码量有多少?实习的代码量有多少?16.实习的Scala重构是指重构哪一方面?你的任务用Java也能做吗?为什么用Scala?17.RPC项目中netty是怎么用的?在对象的传输、标准化中,你具体怎么做的?讲细节18.RPC项目的过程中你遇到最大的困难是什么?19.做完RPC框架项目你有没有对哪个Java特性有了明显更加深入的理解?20.对于一些不使用TCP的通信框架,你会怎么设计?21.怎么设计基于HTTP的通信平台?22.你怎么设计一个社区评论系统?23.你的Java是怎么学的?有系统学习过吗?你怎么评价自己的Java学习进度?24.你不是计算机专业,没有学过底层的计算机知识,那你怎么构建自己的知识架构?25.反问:岗位技术栈:安卓开发,主要Java,还提到“需要扎实的计算机基础,需要个人拥有完整的系统的知识架构,但是我在你身上没有看到”,这句话出来就知道凉透了。面试官还说我“啥都懂一点点,但是不深”个人感觉电话面80分钟还是太离谱了,我还不在宿舍,是在户外站着打电话的。而且感觉问得很深,比我想象的面试难度大很多。—————————后续:9.26换了一个智驾方向高级系统工程师的面试,只聊了实验室项目,十来分钟结束。9.28晚收到签约通知9.29签双方协议,已签,先拿保底 #比亚迪# #java# #智能座舱# #凉经# #系统工程师#