京东、腾讯、美团、阿里、携程、字节跳动面经汇总

面试的过程十分坎坷和艰难,从去年1月份学校毕业开题答辩后,决定准备2021春招实习,假期没回家一直在补知识,从3月中旬开始投递简历,经历了n多场笔试面试,终于在4月末把我搞崩溃了,感觉答得都还可以,但是进二面就挂,心态有些失衡,于是决定回老家玩一圈。

就在回老家的前一天收到京东发来的面试邀请,当时的心情十分复杂,被BAT等重重打击,我有点丧失信心,把面试推到了五一假期之后,抱着随缘的心态,出去玩了一周之后,终于上岸了。

非常感谢京东给我这个机会,面了很多大厂,感觉招的不是实习生了,也可能是现在卷的不行了,要求掌握的技能跟正常秋招正式员工的水平差不多(我只是想实个习-_-)。

总结一下各个厂的面试体验吧。

京东:

  • 整体的面试体验就挺好的,一面问了两个项目和基础知识,有些知识点和技术没答上来的,当时以为也是凉凉,但还是给机会了(这才像是招实习生的公司啊!)
  • 二面也是项目的加深,和基础的加深。
  • 流程太快了,从面试到offer,只用了5天,还有2天是休息日。
  • 简历筛的有点慢,可能是我本身的学校并不是很好,等了一个半月吧,才有面试,给我机会我就很满足了!

腾讯:

  • 第一次面试邀请是腾讯发来的,但是这个操作就非常迷了,我投的java岗,结果c++提前把我捞了,然而他没有在校招系统里走流程(直接打电话面的),以至于我把java岗发的面试拒了(系统点换了个时间,但是流程直接终止),因为我不知道他是c++的岗,这是第一次吃亏吧。
  • 然后就开启了反复捞,反复挂的状态,腾讯面的最多,加起来得四五次。腾讯面试内部应该是有记录的,因为后面不同部门的面试都已经不问基础知识了,直接肝项目。

美团:

  • 美团面了一次java后台,一面挂,可能是当时有些知识掌握的还是不好,面试官在过程中会给我解答我答不上来的问题
  • 被测开捞的,两轮技术面感觉难度确实比java后台简单,侧重项目,但是为啥挂我也想不明白(可能还是太菜了)。

阿里:

  • 阿里都是电话面,问的问题中规中矩,可能是我答的不全面或者有些答的模糊了,都是挂掉了,进二面的一次让我生生白等了四五个小时。。
  • 要求还是挺高的,毕竟厂大。

携程:

  • 携程非常神奇,在携程内推群里,十个人面试可能会有一半人遇到面试官迟到的情况,都在群里找HR。
  • 整体问题感觉不难,回答的也还行啊,挂的也挺彻底的,成功成为携程的人才库一员。

百度:

  • 百度也面了一次,但是面经没写,忘了录音,也有点久远了
  • 面试体验还算不错的,有些问题答不上面试官给我讲,一面后到现在就没消息了(我觉得我还有戏?别做梦了。。)。

字节跳动:

  • 说什么好呢,投日常实习->秒挂(流程终止),投暑期有反应,过了不知道多久,来了面试
  • 这次面试是体验最差的一次,进房间就跟面试官反应,面试官说话听不清,结果也没调好,全程靠我猜问题+面试官重复问题。
  • 挂是肯定会挂的,字节是一开始最早投的简历,自我感觉就进不去(竞争太大了,三餐免费呢,日薪400-500)

零零散散整理的面经,有些有我自己整理的答案(不准确,不全面,不可信,曾经被牛客一大佬怼了,大家看看问题就好),基本是按时间线整理的,有些有二面的放在一起了。

感谢牛客,提供了这么宝贵的地方供我们学习!上岸还愿加分享,愿大家都能找到心意的工作!

1、3.11腾讯后台一面凉经(C++岗)

  1. 自我介绍

  2. 字节序

  3. STL容器

  4. vector、list区别

  5. vector内存超了怎么办,申请多大内存

  6. 内存分配函数malloc

  7. 宏定义

  8. TCP三次挥手四次握手过程,及状态

  9. 超过2MSL怎么办,这时候客户端、服务端处于什么状态

    • 查的答案:在TIME_WAIT状态下,客户端发出ACK以后需要等待2个MSL的时间。假如ACK在传输中丢失,服务端会重新发送FIN,客户端收到以后会重新发ACK。假如在2MSL时间中客户端都没有收到服务端重发的FIN,那么认为服务端已经收到了客户端发送的ACK。此时客户端可以安全断开连接。

    补充:

    为什么客户端在TIME-WAIT状态必须等待2MSL的时间?

    1)为了保证客户端发送的最后一个ACK报文段能够达到服务器。 这个ACK报文段可能丢失,因而使处在LAST-ACK状态的服务器收不到确认。服务器会超时重传FIN+ACK报文段,客户端就能在2MSL时间内收到这个重传的FIN+ACK报文段,接着客户端重传一次确认,重启计时器。最好,客户端和服务器都正常进入到CLOSED状态。如果客户端在TIME-WAIT状态不等待一段时间,而是再发送完ACK报文后立即释放连接,那么就无法收到服务器重传的FIN+ACK报文段,因而也不会再发送一次确认报文。这样,服务器就无法按照正常步骤进入CLOSED状态 。
    2)防止已失效的连接请求报文段出现在本连接中。客户端在发送完最后一个ACK确认报文段后,再经过时间2MSL,就可以使本连接持续的时间内所产生的所有报文段都从网络中消失。这样就可以使下一个新的连接中不会出现这种旧的连接请求报文段。

  10. IO多路复用,epoll和……

  11. 同步、异步;阻塞、非阻塞;区别

  12. 实现memcpy

  13. 两个有序数组,找中位数

2、3.15阿里飞猪Java后台-电话面(40min)已凉

  1. 自我介绍

    • 本硕就读院校,参加过的竞赛、项目
  2. C语言和Java语言的核心区别,有什么特点?

    • C面向过程,Java面向对象
    • C需要自己管理内存,Java自动实现(挖了个坑)
    • C不能跨平台,Java可以跨平台
  3. Java资源(内存)管理是怎么管理的?

    Java的内存管理就是对象的分配和释放问题。(两部分)

    分配 :内存的分配是由程序完成的,程序员需要通过关键字new 为每个对象申请内存空间 (基本类型除外),所有的对象都在堆 (Heap)中分配空间。

    释放 :对象的释放是由垃圾回收机制决定和执行的,这样做确实简化了程序员的工作。但同时,它也加重了JVM的工作。因为,GC为了能够正确释放对象,GC必须监控每一个对象的运行状态,包括对象的申请、引用、被引用、赋值等,GC都需要进行监控。

  4. Java跨平台的核心是什么?

    • Java虚拟机
  5. 数据结构中的常见排序算法

    • 冒泡、快排、直接插入排序、归并排序、堆排序、选择排序(时间复杂度、稳定性)
  6. 假如机器内存500M,比较大的文件超过500M,文件中放的整数,对整数找出N个最小的,怎么做?

    • 用堆排序,大顶堆和小顶堆,能找到前N个
    • 追问:内存有限的话怎么办?(没答上来...)
      • 将文件分割,用归并排序
  7. Java里的接口和抽象类的区别?

    • 抽象类中可以有抽象方法,也可以有非抽象方法共存
    • 接口,jdk1.8之前只能有抽象方法,jdk1.8之后可以存在一个默认default方法
    • 抽象类只能单继承,接口可以实现多个父接口
    • 抽象类可以存在普通成员变量,接口只能存在static final的变量,必须初始化
  8. final关键字定义一个变量或对象,不可变是什么不可变?

    • 问懵了,没答上,答了个地址不可变
  9. C中有指针,指向地址,java定义对象的这个存储结构是不是这样?

    • 答了JVM中的方法区、堆、栈

    补充

    Java内存划分为5个部分:

    1、栈:存的都是方法中的局部变量,方法的运行一定要在栈当中。

    ​ 局部变量:方法的参数,或者是方法内部的变量

    ​ 作用域:一旦超出作用域,立刻从栈内存消失

    2、堆:凡是new出来的东西,都在堆中

    ​ 堆内存里面的东西都有一个地址值:16进制

    3、方法区:存储.class相关信息,包含方法的信息

    4、本地方法栈:与操作系统相关

    5、寄存器:与CPU相关

  10. Java中的集合,哪些线程安全,哪些不安全?

    • 说了Map、Collection(List、Set)
    • HashMap、Hashtable、HashSet等
    • HashMap不安全、Hashtable安全、ConcurrentHashMap安全、ArrayList不安全、Vector安全(弃用)
  11. 线程安全是底层什么在起作用?

    • 回答了同步
    • 追问:同步是指用锁还是别的什么?
      • 回答了加锁可以实现,在就没问了
  12. HashMap和ConcurrentHashMap底层有哪些不一样的?

    • HashMap:数组+链表(jdk1.7)+红黑树(jdk1.8)
    • ConcurrentHashMap:Segement+HashEntry(jdk1.7),数组+链表+红黑树(jdk1.8)
  13. 想追问红黑树、B+、B、平衡二叉树之类的

    • 抽了,说了个没有太深入了解,以为会问一些东西,结果直接过了
  14. Java多线程里创建线程池,提供哪些接口?

    • 说了个ThreadPoolExecutor........

    补充

    1. newCachedThreadPool 创建一个可缓存的线程池,如果线程池长度超过处理需求,可灵活回收空闲线程,若无可回收,则新建线程
    2. newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待
    3. newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行
    4. newSingleThreadExecutor 创建一个单线程化的线程池,它只会唯一的工作线程来执行任务,保证所有任务按照指定顺序(FIFO,LIFO,优先级)执行
  15. 使用线程池的时候,最关心的是什么,线程池会导致内存溢出,怎么防止?

    • 创建一个无限队列,会出现内存溢出么,怎么解决?
      • 设置核心参数,设置线程数
      • 代码上做清除(答了些啥...)
    • 最大线程数100,在重复的加入任务,造成阻塞,一直加会导致内存溢出么,有什么方法防止一直加?
      • 答:排队策略,超过限制,被拒绝。
    • 超过线程池大小直接屏蔽么?
      • ........
  16. 项目问题,哪个项目遇到技术挑战的,怎么解决的?

    • 最后唠了15多分钟

3、3.18美团到店事业部面试java后台(50min)

  1. 自我介绍

  2. 两道算法题

    • 合并两个有序数组(好久不写了,暴力的)

    • 二叉树的右视节点

    •       5
          /   \
        1       2
       / \    /
      4   6  3
       \
        7
      
      输出:[5,2,3,7]
      
      没写出来,讲了思路(类似层序遍历,右孩子先入队,设标记记录深度……),面试官说思路是对的,试着写写吧,但是么写粗来。
      
      写树的类还写错了。。
      写了个public class Tree{}。。
  3. 重载和重写

  4. HashMap、TreeMap区别

    • 追问:HashMap能不能根据添加的顺序进行遍历?
      • 回不能,追问:能不能从底层实现原理解释一下,蒙的……说了一堆hash冲突的问题
  5. HashMap为什么用红黑树,查找效率是多少

  6. Java异常

    • 答Exception和Error
    • 追问:Exception分几种
      • 答:编译时、运行时
  7. Java里的锁

    • 答:Synchronized、Volatile、ReentrantLock

    • 追问:ReentrantLock和Synchronized的区别

      • 补充
        两者的共同点:

        1. 都是用来协调多线程对共享对象、变量的访问
        2. 都是可重入锁,同一线程可以多次获得同一个锁
        3. 都保证了可见性和互斥性
          两者的不同点:
        4. ReentrantLock 显示的获得、释放锁,synchronized 隐式获得释放锁
        5. ReentrantLock 可响应中断、可轮回,synchronized 是不可以响应中断的,为处理锁的不可用性提供了更高的灵活性
        6. ReentrantLock 是 API 级别的,synchronized 是 JVM 级别的
        7. ReentrantLock 可以实现公平锁
        8. ReentrantLock 通过 Condition 可以绑定多个条件
        9. 底层实现不一样, synchronized 是同步阻塞,使用的是悲观并发策略,lock 是同步非阻塞,采用的是乐观并发策略
        10. Lock 是一个接口,而 synchronized 是 Java 中的关键字,synchronized 是内置的语言实现。
        11. synchronized 在发生异常时,会自动释放线程占有的锁,因此不会导致死锁现象发生;
          而 Lock 在发生异常时,如果没有主动通过 unLock()去释放锁,则很可能造成死锁现象,
          因此使用 Lock 时需要在 finally 块中释放锁。
        12. Lock 可以让等待锁的线程响应中断,而 synchronized 却不行,使用 synchronized 时,
          等待的线程会一直等待下去,不能够响应中断。
        13. 通过 Lock 可以知道有没有成功获取锁,而 synchronized 却无法办到。
        14. Lock 可以提高多个线程进行读操作的效率,既就是实现读写锁等
    • 如果希望加锁的时候,超过一段时间没有得到,会自动放弃,应该用哪种?(ReentrantLock)

  8. ArrayList是线程安全的么?多线程操作下会发生什么?

    • 多线程并发情况下出现ConcurrentModificationException并发修改异常,应该是这个!
    • 答了个读写不一致...
  9. 线程安全的List有哪些?

    • Vector、Collections.synchronized()、CopyOnWriteArrayList
  10. == 和 equals() 区别

  11. 1亿个数,找到前k小的数

    • 答反了啊wc!应该是大顶堆。
    • 进阶:分治,得到N个最小K个数,再N*K找K个小
    • 最后,堆排序的时间复杂度
  12. TCP三次握手

  13. TCP的端口号是解决什么问题的?

    • 第一次遇这个题,有点懵,答:建立连接要发送一些包,为了知道哪里来到哪里去……保证建立连接
  14. MySQL的隔离级别

  15. MySQL锁分类

  16. 可重复读的情况下,能不能解决幻读?

    • 回:不能。。。
    • 追问了间隙锁(GAP锁),这个就能解决可重复读的幻读问题!
  17. 反问

    1. 哪里需要加强的
      • 整体还不错,算法需要加强,Java基础多看看
    2. 一共有几面?
      • 两轮技术面

4、3.23携程国际事业部一面(Java)

  1. 自我介绍
  2. 项目介绍
  3. mysql存储引擎
  4. Innodb索引数据结构,有几类索引?
  5. 假设要查一个非主键索引,是怎么查的?
  6. mysql联合索引,假设建了(a,b,c)联合索引,查a>1,b=1,c=1会用到什么索引?
  7. Mybatis中mapper文件中,解决sql注入?
  8. Mybatis插入时得到主键id?
    • useGeneratekey参数 true
  9. javaHashMap实现
  10. ConcurrentHashMap线程安全,为什么?
  11. 用什么方法实现并发安全?
  12. 单例模式为什么有synchronized还要加入volatile一起用?
  13. Lock内部实现原理
  14. 多线程线程池设置参数,有任务来了,怎么运作的?
  15. ……还是线程,问的太乱了
  16. 【1,1,2,2,3】,找唯一出现一次的。
  17. 未排序的数组找到第k大。

腾讯3.20,3.25分别一次应用开发一面,运营开发一面

都忘了录音,反正就是面的时间很短,反复捞,反复挂。。

5、3.26腾讯运营二面(Java)

  1. 自我介绍

  2. 工作地点有没有要求

  3. 项目介绍

  4. SpringIOC容器启动过程

    1)创建IoC配置文件的抽象资源,这个抽象资源包含了BeanDefinition的定义信息.

    2)创建一个BeanFactory,比如常用的DefaultListableBeanFactory。

    3)创建一个载入BeanDefinition的读取器,比如XmlBeanDefinitionReader来载入XML文件形式的BeanDefinition,通过一个回调配置给BeanFactory。

    4)从定义好的资源位置读入配置信息,具体的解析过程由XmlBeanDefinitionReader来完成。完成整个载入和注册Bean定义之后,需要的IoC容器就建立起来了。这个时候就可以直接使用IoC容器了。

  5. Mybatis注册bean的过程

  6. Spring怎么解决循环依赖的

    简单说明spring如何解决循环依赖:
    我们先实例化A,实例化好后,调用addSingletonFactory放入三级缓冲池中,然后此时我们设置属性的时候会发现我们还依赖B,于是我们就先去实例化B后并为进行属性赋值,而当我们进行赋值的时发现B也依赖A,但是之前已经把A存放在singletonFactories,那么B会将其取出并装配自己,实例化以后把自己放入单例池中,然后A也就可以继续进行属性赋值了,最后A 实例好以后,将自己也放入单例池中,这样Spring就解决了循环依赖。

  7. ConcurrentHashMap底层原理

  8. HashMap扩容

  9. Volatile、怎么保证可见性的

6、4.6阿里本地生活物流研发一面(Java)1小时30分钟

  1. 自我介绍
  2. 项目介绍(主要负责工作)
  3. 面向对象的理解
  4. int、Integer区别(包装类、基本数据类型的区别)
  5. JVM相关
  6. 保证class重复加载问题,是JVM实现的还是谁实现的
  7. 有什么方法能实现同一个类加载两次
  8. 双亲委派机制和打破双亲委派机制的方法
  9. ==和equals,hashcode()
  10. hash用在哪些场景
  11. 重载重写的区别
  12. spring最核心的是什么(IOC、AOP)
  13. spring里面用到的设计模式
  14. 动态代理的实现
  15. cglib和动态代理的区别
  16. 其他的代理模式(静态代理)
  17. 哪些东西交给spring容器
  18. spring作用域
  19. spring生命周期
  20. DDD 领域驱动设计(不知道是啥)
  21. 线程和进程
  22. 上下文是什么
  23. 线程是怎么调度的
  24. mysql事务
  25. 隔离级别
  26. 算法题:最大子序列和【leetcode 53】https://leetcode-cn.com/problems/maximum-subarray/

7、4.9阿里本地生活物流研发二面(Java)50分钟

写在前面,本来约的4.8晚上6:30,等了15分钟面试官没进,找到hr说面试官开会,然后我就等,等等等,等到10点半,我走了,回宿舍路上快11点了,大佬来电话,约了第二天的,我真是不知道说什么好,不如直接给我说换个时间.........结果第二天还是迟到,又找hr,等了小20分钟吧,才面上,我醉了。

  1. 自我介绍,参与的项目,完成什么功能,在什么场景下使用,以及自己参与了什么任务
  2. 数据挖掘项目中异常数据怎么处理的
  3. 有没有碰到过join的时候,就是两张表关联的情况。。
  4. 数据量级
  5. MapReduce有涉及、了解、应用和研究么(并没有)
  6. java项目中收获了什么
  7. spring中bean的生命周期是怎么管理的
  8. springAop,拦截器和过滤器的区别,使用场景上的区别
  9. redis数据类型,数据类型的使用场景
  10. redis中字符串的底层是怎么实现的(数据结构)
  11. java中高级特性的应用,比如事务、并发
  12. JUC里面用过什么工具类,实现什么场景下的什么功能
  13. 悲观锁、乐观锁的区别,使用场景
  14. JUC里用了哪些锁
  15. 读写锁和可重入锁的区别
  16. 项目中遇到的困难
  17. 坚持比较久的事情(感觉问了这个的都凉了,是因为没啥问的了么。。)
  18. 最后,面完官网流程秒挂,这大佬是个大大佬,太喜欢问场景题了,我只想面个实习生.......

8、4.6腾讯测开一面(20min)

  1. 自我介绍
  2. 接口和抽象类的区别
  3. 什么是多态
  4. redis缓存雪崩、缓存击穿、缓存穿透
  5. 堆排序
  6. java内存泄漏
  7. 可能是我太菜了,面试官感觉我很差,前面回答的问题都说我回答的不对,仓促结束

9、4.7字节新业务后台开发(Java),体验最差!(1h)

从进面试房间,不止一次给面试官说,您那边声音听不清(他带了一个耳朵的无线耳机,啥都听不见),也不知道调没调整,全程回答问题靠我猜+反问

  1. 自我介绍
  2. java拆箱装箱
  3. 有几种线程池(参数)
  4. synchonized关键字应用场景
  5. 多线程下volatile会出现什么问题
  6. springmvc spring reactor异步响应
  7. springmvc的架构
  8. model怎么绑定视图
  9. mysql查询优化(慢查询排查步骤)
  10. mysql索引,普通索引唯一索引
  11. 联合索引(a,b) select * from a where b = c% 索引是否会生效
  12. 数据库事务和隔离级别及产生的问题(脏读幻读可重复读)
  13. 数据库死锁的场景
  14. 算法题,行列均有序的二维数组,找目标值

10、4.7美团到家事业群质量效能部测试开发一面(50min)

  1. 看简历是java后台,之前面过其他岗位么?
  2. 自我介绍
  3. 项目介绍(问了20min左右。。。)
  4. 哪里人...对工作地点的要求
  5. 编程语言掌握哪些
  6. 反问
  7. 算法题,二叉树前序遍历

11、4.13美团到家事业群质量效能部测试开发二面(50min)

同样是面试官开会,但是好就好在,hr提前联系我更改时间。

忘了录音,问了好多项目相关的,技术上倒没问啥太难的,全程聊的其实很开心,算法也撕出来了,最后也聊到入职时间之类的,but,面完一周没结果,美团公众号问了几次,最后给的反馈是岗位不匹配,就是凉,不知道为啥。

12、5.8京东零售java开发实习一面(1h30min)

本来约的是4.26,但是时间不方便,当时面了那么多,都挂了,真是想放弃了,没放在心上,寻思玩一圈回来再好好搞。

  1. 自我介绍
  2. 实习时间
  3. 微服务、分布式了解吗(不了解,在学)
  4. 机器学习、神经网络是课程学的么
  5. 介绍一下数据挖掘的项目,详细说一下
  6. 数据处理和特征工程做了什么
  7. 决策树、随机森林,GBDT、XGBoost之间的区别
  8. gini系数和信息熵的区别
  9. 随机森林和XGBoost有什么区别
  10. java集合框架,ConcurrentHashMap和HashMap的区别
  11. hash冲突的相关问题
  12. ThreadLocal了解么,底层实现
  13. 并发中的锁
  14. synchronized锁普通方法和静态方法之间的区别,用的时候会互斥么
  15. JVM了解么
  16. 对象从新生代转到老年代有哪些情况
  17. 哪些对象该回收,哪些不回收
  18. 哪些工具可以查看JVM情况、调优命令
  19. 创建线程时有哪些参数可以配置
  20. spring做事务控制的常见方式
  21. spring、xml中用到的注解
  22. 事务传播机制有哪些
  23. 动态代理和cglib的区别
  24. springIOC依赖注入底层实现
  25. Java反射机制
  26. 设计模式(模板、策略、代理、工厂、适配器、装饰器)
  27. 策略模式和模板模式的区别
  28. Mysql联合索引,只用后面的字段去查询,联合索引会生效么
  29. Mysql索引的数据结构
  30. B+树的叶子节点是连起来的么,会把所有的数据都存在叶子节点上么
  31. redis了解分布式锁么(没用过,只是简单的用过redis)
  32. redis部署,主从复制
  33. 除了简历上写的,还有哪些我没问,感觉掌握的还好的,像消息队列……(有过概念了解, 没有实战和应用经验)
  34. 了解过哪些算法,dp、、分治、贪心、二分、排序……
  35. 给了个dp,最大公共子字符串的长度(写的比较快,被问到是不是刷过题,hhhhh,以至于二面又写了两道........)
  36. 反问环节,问了今天的回答哪些不足回去再看看,和部门
  37. 面试官给的评价:有些比较可以,有些不深入,可能是因为没有实际经验,总的来说,你不是非常优秀,但也不是很差

13、5.11京东零售java开发实习二面(1h)

  1. 自我介绍
  2. 问的多的还是数据挖掘机器学习的项目
  3. 为什么一开始用线性回归,又为什么后面用神经网络、树模型
  4. 用随机森林的作用是为什么
  5. 准确率高你觉得是过拟合的问题么
  6. 自己学习机器学习学了多久
  7. 有看过java的开源框架么(Spring)
  8. 现在侧重点,再看java哪些方面
  9. jdk1.8的新特性
  10. Lambda表达式,有啥优点,设计理念有什么改变(写法的设计方面的改变)
  11. JUC包,CountDownLatch
  12. AQS体系有哪些相关的类
  13. 线程的代码题:A、B线程交替打印
  14. 撕算法:堆排序+讲过程+复杂度分析(时间、空间)
  15. 最后聊天,哪里人,面试过其他公司么,多久来实习,能实习多久
  16. 多久能适应团队的开发节奏
  17. 对java感兴趣一些,还是机器学习,还是都可以
  18. 反问:业务中用到的技术、流程最快什么时候有结果

上午面完,下午二面面试官给的电话说二面通过了,后续会HR面试

14、5.12京东零售java开发实习HR面(15-20min)

  1. 自我介绍
  2. 项目介绍
  3. 遇到的问题,怎么解决的
  4. 全程我说的多一些
  5. 最后HR说和面试官交流一下给结果

5.13,收到录用邮件,后续的offer审批都很快

终于等到你,还好我没放弃。

最后祝愿大家,眼里都有星辰大海,生活都有诗和远方,手里都有大把offer!

#面经##校招##阿里巴巴##腾讯##携程##美团##Java工程师#
全部评论
算法题需要自己建树吗,你怎么建的
点赞 回复 分享
发布于 2021-05-20 12:41
写的什么项目呀?在哪里找的啊
点赞 回复 分享
发布于 2021-05-31 09:23

相关推荐

在使用Webpack进行打包时,以下是一些常见的问题和对应的解决方法:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=9d41438f19104dca802ef21b5942c139模块加载错误:Webpack在解析模块依赖关系时可能会出现加载错误,如找不到模块或依赖冲突等。解决方法包括检查依赖版本、配置resolve.alias解决模块路径问题,或使用resolve.extensions设置可以省略的文件扩展名。处理CSS文件:Webpack默认只能处理JavaScript模块,无法直接处理CSS文件。可以使用相应的loader,如style-loader和css-loader,来解析和处理CSS文件,让其能够被打包。处理ES6+语法:Webpack默认不能直接处理ES6+语法,需要使用Babel进行转译。通过安装babel-loader和相关的Babel插件,配置webpack.config.js文件,可以将ES6+代码转译为低版本的JavaScript,以便在目标环境中运行。静态资源处理:Webpack可以处理和打包各种静态资源,如图片、字体、音频等。通过file-loader或url-loader,可以配置打包规则,处理这些静态资源,并在JavaScript中引用它们。代码拆分和懒加载:Webpack支持将代码拆分成多个块,并在需要时进行动态加载。通过使用import()函数或配置webpack.config.js,可以实现按需加载模块,提高应用的性能和加载速度。Dev和Prod环境配置:在开发环境和生产环境中,Webpack的配置可能存在差异。在开发环境中,可以启用devServer和sourcemap等功能。在生产环境中,需要进行代码压缩、优化等配置。通过使用webpack-merge和环境变量等方法,可以根据不同的环境配置合适的Webpack配置。这只是一些常见的Webpack问题和解决方法的示例,实际开发中可能会遇到更多的问题。解决Webpack问题的关键是仔细检查错误信息、查阅文档和社区资源,并根据具体情况进行适当的配置和调试。
点赞 评论 收藏
分享
评论
18
110
分享
牛客网
牛客企业服务