大厂面试题总结

大厂面试题题目连接

 

天天对这些题目的答案进行归总:java

 

阿里面试题mysql


多个线程同时读写,读线程的数量远远大于写线程,你认为应该如何解决并发的问题?你会选择加什么样的锁?linux

 

 


JAVA的AQS是否了解,它是干吗的?
除了synchronized关键字以外,你是怎么来保障线程安全的?
Tomcat自己的参数你通常会怎么调整?
你有没有用过Spring的AOP? 是用来干吗的? 大概会怎么使用?
若是一个接口有2个不一样的实现, 那么怎么来Autowire一个指定的实现?
若是想在某个Bean生成并装配完毕后执行本身的逻辑,能够什么方式实现?
SpringBoot没有放到web容器里为何能跑HTTP服务?
SpringBoot中若是你想使用自定义的配置文件而不只仅是application.properties,应该怎么弄?
SpringMVC若是但愿把输出的Object(例如XXResult或者XXResponse)这种包装为JSON输出, 应该怎么处理?
若是有不少数据插入MYSQL 你会选择什么方式?
若是查询很慢,你会想到的第一个方式是什么?索引是干吗的?
查询死掉了,想要找出执行的查询进程用什么命令?找出来以后通常你会干吗?
读写分离是怎么作的?你认为中间件会怎么来操做?这样操做跟事务有什么关系?
分库分表有没有作过?线上的迁移过程是怎么样的?如何肯定数据是正确的?
你知道哪些或者大家线上使用什么GC策略? 它有什么优点,适用于什么场景?
JAVA类加载器包括几种?它们之间的父子关系是怎么样的?双亲委派机制是什么意思?有什么好处?
如何自定义一个类加载器?你使用过哪些或者你在什么场景下须要一个自定义的类加载器吗?
堆内存设置的参数是什么?
HashMap和Hashtable的区别。
实现一个保证迭代顺序的HashMap。
说一说排序算法,稳定性,复杂度。
说一说GC。
JVM如何加载一个类的过程,双亲委派模型中有哪些方法?
TCP如何保证可靠传输?三次握手过程?

web

 

京东面试题面试


java经常使用的数据结构有哪些?哪些是线程安全的?是怎么保证线程安全的?
Redis中的Lua有没有使用过? 能够用来作什么? 为何能够这么用?
线程池内部工做原理能够说一下么?
死锁是什么意思,造成条件是什么?出现死锁是能够经过什么方式去排查。
在交易过程当中如何放在用户在支付时的重复支付(交叉支付),请写出你了解的方案或使用的过的方案。
数据库索引有哪几种,他们之间的区别。
程序开发时经过开发工具DeBug调试时,控制台显示的内容都包含什么?哪些内容能够帮助你发现问题和解决问题。
RPC通讯过程当中,假设A系统提供了一个方法入参是一个JavaBean,出参也是一个JavaBean。另外两个系统B系统、C系统调用接口,调用方B想让提供方A增长一个返回参数,假设服务提供方A增长了返回参数,请问C系统调用方须要作什么处理?
了解哪些设计模式,用伪代码实现一个你熟悉的设计模式。
讲一下怎么使用分布式锁。
说说HashMap的原理, 以及HashMap如何扩充bucket的大小。
Redis的Pipeline是用来干什么的?
Mysql索引的分类(Btree, hash),各自使用什么状况 。
说说Myisam, Innodb区别。
知道哪些负载均衡算法。
说一下Btree的查找原理。
简述三次握手,若是c端发起握手请求,s端没法马上创建链接应该回应什么?redis

 


去哪儿网面试题算法


自我介绍,项目介绍。
mysql数据库调优。
sql优化。
like能用索引吗?
java对象四种引用。
GC原理。
jvm内存结构。
说一下你学过jvm 在书写代码上对你有什么帮助和提升。
千万数据量的查询你会怎么作?
HashMap在jdk1.7和1.8的区别,为何引入这个概念?hash碰撞怎么解决,为何1.8要比1.7更好,好在哪?
关于你的项目,若是并发很大,你会怎么改造。
方法区里什么样的对象有可能被回收。
线上cpu飙升100%你怎么处理。
频繁FullGC怎么处理。
线程池建立有几种,为何建立定长的线程池个数最好是5,10,15这样的数字。
linux命令。
伊甸区和幸存区可动态变化吗?
redis和memcached区别。
说几个jdk命令,jmap是什么意思。
若是并发很大,你对数据的正确性怎么保证。sql


饿了么面试题数据库


http和https的区别,https原理,http2.0与1.0的区别。
Java的垃圾回收机制,Java文件加载机制,tomcat类加载机制,锁机制,jvm原理及线上调优,jvm内存模型。
多线程,有哪些能够保持进程同步的方法,建立线程的几种方法,对i++多线程访问你会怎么作。
Java的设计模式,单例有什么模式,懒汉为何加volotile,volotile的内存屏障,如何避免死锁。
考虑单例模式的编写,要线程安全且内存消耗小(剑指offer原题)。
String、StringBuilder、StringBuffer区别;String类能被继承吗?为何?
在白纸上手写二分法排序算法(lintcode上原题);二分查找的思想。
查找单链表中倒数第k个节点的算法,手写(lintcode上原题);最多见的排序算法你见过哪些,快排的基本思想及时间复杂度。
常见的数据结构有哪些。
hashmap、hashcode同样,不equals怎么处理 ;hashcode实现原理,currentHashMap原理,实现细节,怎么实现同步的;类为何要有hascode方法,是否是主要在集合类中都要实现hashcode方法;equals方法怎么实现;两个不一样的对象可能有相同的hashcode值吗;经常使用集合有哪些。
tcp三次握手,四次挥手协议。
架构设计一个开发性问题,设计一个Nginx管理的中间件,怎么设计。
全部的类都继承与object,你用过object类的直接子类有哪些,object类经常使用的方法有哪些。
Java会出现内存泄漏吗,若是回,在哪一种状况下?
抽象类和接口的区别。
平时怎么扩展本身的专业知识水平。设计模式


百度面试题

什么是 Java 的反射机制。
Cookie 和 Session的区别。
get 和 post请求的区别。
IOC的优势是什么。
IO 和 NIO的区别,NIO优势。
JRE、JDK、JVM 及 JIT 之间有什么不一样。
Hashcode 的做用。
简述一致性 Hash 算法。
为何在重写 equals 方法的时候须要重写 hashCode 方法?equals与 hashCode 的异同点在哪里。
为何 Map 接口不继承 Collection 接口。
说出几点 Java 中使用 Collections 的最佳实践?
GC是什么?为何要有GC。
何时会致使垃圾回收。
GC 有几种方式?怎么配置。
何时一个对象会被GC? 如何判断一个对象是否存活。
垃圾回收器的基本原理是什么?
Serial 与 Parallel GC之间的不一样之处。
JVM 中一次完整的 GC 流程是怎样的? 对象如何晋升到老年代。
吞吐量优先和响应优先的垃圾收集器选择。
说说你知道的几种主要的jvm 参数。
Java中存在内存泄漏问题吗?请举例说明。
什么是线程,多线程的优势是什么?以及简单说一下多线程的几种实现方式。
ThreadLocal 用途是什么,原理是什么,用的时候要注意什么?
线程池是什么?为何要使用它?如何建立一个Java线程池?
ThreadPool用法与优点能够说一下么?
synchronized 的原理是什么?synchronized 和 ReentrantLock 有什么不一样?
有T1,T2,T3三个线程,怎么确保它们按顺序执行?怎样保证T2在T1执行完后执行,T3在T2
行完后执行同步块内的线程抛出异常会发生什么?
什么是乐观锁(Optimistic Locking)?如何实现乐观锁?如何避免ABA问题。
Java中活锁和死锁有什么区别?
Executors类是什么? Executor和Executors的区别?
什么是设计模式(Design Patterns)?你用过哪一种设计模式?用在什么场合?
你能写出三种单例模式实现么?
你知道Google是如何在一秒内把搜索结果返回给用户?
高并发下,如何作到安全的修改同一行数据?
如何避免浏览器缓存。
大型网站在架构上应当考虑哪些问题?
最近有在看什么书么,印象最深入的是什么?
大家线上应用的 JVM 参数有哪些?
能简单说下你对算法的理解么?

相关文章
相关标签/搜索