首页 > java后台开发实习近期面经
头像
秃头少女靓崽崽
编辑于 2021-04-05 15:39
+ 关注

java后台开发实习近期面经

快手一面

Java类加载的过程,分几步,(从.Class文件变成一个实际的对象需要哪些操作)

类初始化的过程

JVM分成哪几块,Java内存模型,运行时数据区有哪几部分

本地方法区里放的是什么

Mysql使用哪种搜索引擎,innodb有哪些特性

Innodb的索引用的是什么,b+树的特性是什么

聚集索引和非聚集索引在数据结构上有什么区别?

说一下hashmap,红黑树和平衡二叉树有什么区别,为什么不使用平衡二叉树?

Hashmap链表插入方式为什么是尾插?说说Concurrenthashmap,他是如何加锁,put和get有什么区别

Hashtable的底层是什么,为什么线程安全

Synchronized有几种用法?他锁的是什么?怎么加锁,如何使锁生效?Synchronized的底层是怎么做的?(面试官:锁的是对象,在对象的头里加了一个计数器,进行锁升级)

Volatile有原子性吗?

背一下网络模型,http在哪一层,tcp在哪一层,tcp有什么特性,怎么保证可靠性

Mysql事务隔离级别,有什么区别,什么是脏读幻读不可重复读

聊一聊redis,(我说了持久化方式)如果RDB和AOF同时开启,默认使用哪种方式恢复,为什么?

多线程用过吗?线程间通信方式?Wait,notify,sleep有什么区别?

写题:反转链表,

判断是否有环,

返回换环点(我说了个hashset的思路,面试官说有重复节点怎么办)


快手二面

项目:讲一讲token各部分放了什么,干嘛的?

讲讲百度api怎么用的?

Redis内存满了怎么办(redis内存淘汰机制)

Linux常用的指令?

在浏览器里输入url后会发生什么?

Java方面看过那些源码?线程池用过吗?有哪些参数?拒绝策略?

threadLocal用过吗?

Select...............for update用过吗,什么意思?

平常建立索引,使用什么索引?

JVM方面看过什么书吗?

有三个排好的数组(每个数组里放100w个数字),取出其中最小的10个数。

有8个数字,1,1,2,2,3,3,4,4,把这8个数字排成一排,两个1中间隔一个数,两个2中间隔2个数,两个3中间隔3个数,两个4中间隔4个数.


京东

在浏览器里输入url后整个过程

Dns协议在哪一层,tcp在哪一层,tcp如何保证传输顺序,滑动窗口协议

Tcp和udp区别

面向对象的特性,怎么理解多态?

重写和重载的区别

Arraylist和linkedlist的区别?

mYbatis的sql注入

Mysql的索引的作用?Innodb和myisam的区别?有哪几种行锁?

快排的时间复杂度

抽象类和接口的区别,接口里允许有私有方法吗?

Redis的数据类型和持久化方式?知道resp协议吗?

用redis实现分布式锁

Hashmap是线程安全的吗?为什么不安全?

讲一下AOP

乐观锁和悲观锁,讲一讲CAS。


阿里巴巴(钉钉)

http协议和https协议的区别,https通信原理整个流程

讲讲三次握手

有看过java相关的书吗?

301和302的区别

项目用的jdk哪个版本?Jdk1.7和jdk1.8的区别(我讲了hashmap和concurrenthashmap),在java内存模型上的区别?

知道函数式编程吗?(lambda)

讲一下hashmap实现原理?重写equals方法为什么一定要重写hashcode方法

讲一下线程池的核心参数都是什么意思?核心线程数和最大线程数这两个有什么关系,为什么要有这两个参数?

了解过并发编程的队列linkedblochqueue之类的?

了解乐观锁悲观锁吗?

Redis怎么搭的,在项目里怎么用?讲讲redis主从复制模型,对缓存有什么理解,使用缓存会带来什么问题?(如何保证缓存与数据库双写时的数据一致性)缓存穿透怎么解决?

问了超时取消这个功能怎么做?

Mysql事务隔离级别?什么是脏读?Myaql事务特性(我说acdi),事务具有隔离性的话为什么会读到其他事务未提交的数据呢?

讲一下垃圾回收机制?类加载机制,双亲委派模型?

问题:编程题:两个大数相加,入参两个大数均用string表示


腾讯

JVM内存模型,类加载器

Volatile关键字,底层实现机制

Hashmap

进程和线程的区别,进程怎么通信,什么是管道

计算机里的大端字节序和小端字节序是什么?

讲一下TCP三次握手,为什么要三次握手,TCP的SYN Flood洪水攻击了解吗

Mysql索引如何实现?






百度一面

说一下java集合,他们各自有什么结构特点,分别适用什么样的情况

Hashset如何实现的,如何遍历一个hashmap(我回答是iterator迭代器),迭代器迭代的是谁,用的是什么方法?

Hashmap底层的实现了解多少?Hash根据什么算出来的?对象的equals方法在什么时候会用到

Object类里都有什么方法?

Java线程的生命周期和切换的条件都是什么?Sleep和wait方法的区别

Join和yield的方法作用是什么?

举个例子:new两个线程thread A和thread B,然后用starrt()方法同时启动两个线程,哪个线程先执行?(我觉得是A)为什么是A?线程运行的条件是什么?再回到这个问题上?

有线程1和2,需要等线程1,2都执行完再执行3,因为3需要1和2的结果,这个模型怎么做?

说一下synchronized实现的机制,举个例子:有个类中有两个静态方法A,B都用了synchronized修饰,现在又两个线程1,2。1执行A方法,同时2执行B方法,能执行吗,为什么?

线程安全的单例的写***吗?作用是什么?

说一下GC,A引用B,B引用A,他们会被会被回收吗?

JVM内存模型里的栈帧知道吗?

说一下事务的基本要素,引发的问题以及合理解决的方法?脏读幻读不可重复读分别是什么?Mysql的索引是怎么实现的,一般怎么用?

Redis持久化方式,单机,主从,哨兵,集群这几种模型部署方式,这些架构能解决什么样的问题,存在什么问题?

Springboot的bean注入和bean的生命周期?

说一下OSI网络模型和TCP/IP协议栈?ARP协议的作用是什么?TCP和UDP的区别,TCP怎么做到流量控制?TCP和HTTP有什么联系?说一下HTTPS的通信加密的整个流程?

HTTP的header头有哪些信息?你项目里的Token放在哪Cookie了解吗

并行并发的联系和区别,线程和进程的联系和区别?

僵尸进程的原理,进程间通信的方式,操作系统的进程调度算法有哪些

算法:链表的倒数k个节点

说一下快排的思路

使用Object类的方法实现一个生产者—消费者模型能写吗?

反问


百度二面

问的都是项目

延时取消订单的逻辑怎么做的?

登录功能的全部过程,token存在客户端的哪里,在https的header的哪一部分?有两台服务器A,B,用户在服务器A登陆后,服务器B如何知道其为合法用户?

Get和post请求的区别

如果客户端发送一个请求,服务器处理这个请求需要很长时间,这种情况的处理方法?一方面避免时间过长会超时,另一方面如何从程序的设计上面避免这个问题。

Linux指令说说。

部署redis时遇到过什么问题?比如增加redis的访问权限。项目中redis做的什么?在项目中用得什么存储模式。

Redis有哪些数据类型,分别什么作用?如果redis出现故障比如断电宕机,如何避免数据丢失?

项目的数据库的数据量,数据库中存用户名密码有什么要注意的吗?

索引有哪些类型?使用联合索引有什么注意的地方?

Sql优化,A表B表做联合查询怎么做,inner join和左连接和右连接的区别?

什么是sql注入,如何防止sql注入?

项目中有遇到什么问题吗?

项目里的数据库是单机还是主从复制架构?知道主从数据库吗?

前端页面自己写的吗?前后端交互怎么做,连接方式是什么?

了解跨域问题吗?

有一栋楼100层高,小球从100楼扔下就一定会碎,给你两个小球,如何最有效率的找出哪一层楼让小球刚好不会碎(两个小球只要没碎就可重复利用)







百度三面

随便聊了聊

怎么大三就出来找实习?

怎么看待加班?

作为女生做开发会不会感觉压力大?

工作过程中要学习c++,php,python,golang你能接受吗?

以后职业规划

一面二面的小哥哥更喜欢哪个(啊这,我直接:都很好,顺便夸夸百度面试官素质高)

反问:询问自己面试表现,该部门工作




网易一面

线程安全框架有哪些?currenthashmap如何实现线程安全?和hashtable有什么区别?

创建线程的方式,runnable和callable的区别?

一个线程的生命周期是什么,线程start之后会一直执行吗?

Javav中实现锁有什么方法?讲讲volatile,如何实现数据可见性?

Java创建线程池的方法?线程池的种类和参数?举个例子:核心线程数是5,最大线程数是10,workqueue是10,现在要有运行6个线程,讲下流程

Java设计模式知道哪些?简单手写个单例模式

MySQL的事务隔离级别,各解决什么问题,MySQL的默认隔离级别是什么,什么是内连接外连接交叉连接,他们的mysql指令怎么写?

Innodb怎么实现行锁?

什么是最左前缀原则?Mysql有哪些索引优化的方法?

手写sql题:成绩表:Scores(stuId,courseId,score)

stuId:学号;

courseId,课程编号;

score:成绩

查询所有课程平均成绩大于60分的同学的学号和平均成绩;

Spring框架如何处理接口请求?Springboot注解了解多少?

Spring和springboot有什么区别?

Spring的AOP如何处理的?

手写算法:快排

讲讲快排的思想?

网易二面

商品订单的数据库表是怎么做的?如何设计一个订单列表?如何做个订单商品详情,怎么通过外键设计两张表?

如何使用的rabbitmq来做延时队列?在写这个功能的时候有什么问题?

使用redis作缓存这个部分怎么做的?Redis和mysql数据如何保持一致性?

简单说5-10个linux指令。使用过git吗?

说说Mysql的索引,假如往b树里插入一个数,子节点满了,如何插入

如何解决缓存穿透,布隆过滤器底层是如何实现的?讲一讲归并排序

说一说计网的五层结构?TCP和UDP区别?TCP如何保证传输的稳定?说说TCP和UDP支持的上层协议

简述在浏览器中输入一个url得到一个页面的全过程。

青年代有哪些区域,用的什么GC算法,讲讲复制算法的逻辑,老年代的回收算法用的什么?假如发生了一次full GC,程序会吊起吗?

手写sql:表tb_clazz:clazz(班级)   name(学生姓名)

A   小明

A   小李

B   小红

....


人数最多的5个班级,输出班级名

手写算法:反转链表

腾讯初试

最近看dubbo框架有什么原因?

并发的时候会出现什么线程问题?Hashmap是线程安全的吗?除了数据问题还会有什么问题?Happens-before是什么?Volatile如何保证数据可见性?

Synchronized和lock有什么区别?

Synchronized加在普通方法上锁的是什么?加在静态方法上锁的是什么?

创建线程池的方法?线程池的实现原理。

创建一个thread线程,我要跑10个runnable,怎么做?

讲讲GC算法,新生代分为几块,比例是多少?用的什么回收算法?什么情况下发生full GC?

Innodb和nyisam的区别,用的什么索引?讲一下通过普通索引/聚簇索引查询数据的流程?

Arraylist和linkedlist的区别?

currenthashmap如何实现线程安全?怎么保证扩容的线程安全

介绍项目

MySQL事务隔离级别,什么是幻读,MySQL如何解决不可重复读?知道MVVC吗?

Redis有哪些数据类型,有哪些持久化方式

Rabbitmq如何解决重复消费?Redis如何实现分布式锁

解决hash冲突有哪些方法?

Redis底层数据结构,淘汰过期键的策略?

初试已过,再等复试



更多模拟面试

全部评论

(22) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期热帖

近期精华帖

热门推荐