码迷,mamicode.com
首页 > 其他好文 > 详细

[面试试题]

时间:2019-10-08 14:04:41      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:基础   种类   定时   场景   怎么   分布式事务   握手   内存结构   读写锁   

Java基础

1、HashMap的源码,实现原理,JDK8中对HashMap做了怎样的优化。

2、HaspMap扩容是怎样扩容的,为什么都是2的N次幂的大小。

3、HashMap,HashTable,ConcurrentHashMap的区别。

4、极高并发下HashTable和ConcurrentHashMap哪个性能更好,为什么,如何实现的。

5、HashMap在高并发下如果没有处理线程安全会有怎样的安全隐患,具体表现是什么。

6、java中四种修饰符的限制范围。

7、Object类中的方法。

8、接口和抽象类的区别,注意JDK8的接口可以有实现。

9、动态代理的两种方式,以及区别。

10、Java序列化的方式。

11、传值和传引用的区别,Java是怎么样的,有没有传值引用。12、一个ArrayList在循环过程中删除,会不会出问题,为什么。13、@transactional注解在什么情况下会失效,为什么。

 

数据结构和算法

 

1、B+树2、快速排序,堆排序,插入排序(其实八大排序算法都应该了解3、一致性Hash算法,一致性Hash算法的应用

JVM

 

1、JVM的内存结构。

2、JVM方法栈的工作过程,方法栈和本地方法栈有什么区别。

3、JVM的栈中引用如何和堆中的对象产生关联。

4、可以了解一下逃逸分析技术。

5、GC的常见算法,CMS以及G1的垃圾回收过程,CMS的各个阶段哪两个是Stop the world的,CMS会不会产生碎片,G1的优势。

6、标记清除和标记整理算法的理解以及优缺点。

7、eden survivor区的比例,为什么是这个比例,eden survivor的工作过程。

8、JVM如何判断一个对象是否该被GC,可以视为root的都有哪几种类型。

9、强软弱虚引用的区别以及GC对他们执行怎样的操作。

10、Java是否可以GC直接内存。

11、Java类加载的过程。

12、双亲委派模型的过程以及优势。

13、常用的JVM调优参数。

14、dump文件的分析。

15、Java有没有主动触发GC的方式(没有)。

 

多线程

 

1、Java实现多线程有哪几种方式。

2、Callable和Future的了解。

3、线程池的参数有哪些,在线程池创建一个线程的过程。

4、volitile关键字的作用,原理。

5、synchronized关键字的用法,优缺点。

6、Lock接口有哪些实现类,使用场景是什么。

7、可重入锁的用处及实现原理,写时复制的过程,读写锁,分段锁(ConcurrentHashMap中的segment)。

8、悲观锁,乐观锁,优缺点,CAS有什么缺陷,该如何解决。

9、ABC三个线程如何保证顺序执行。

10、线程的状态都有哪些。

11、sleep和wait的区别。

12、notify和notifyall的区别。

13、ThreadLocal的了解,实现原理。

数据库相关

 

1、常见的数据库优化手段

2、索引的优缺点,什么字段上建立索引

3、数据库连接池。

4、durid的常用配置。

 

计算机网络

 

1、TCP,UDP区别

2、三次握手,四次挥手,为什么要四次挥手。

3、长连接和短连接。

4、连接池适合长连接还是短连接。

 

设计模式

 

1、观察者模式2、代理模式3、单例模式,有五种写法,可以参考文章单例模式的五种实现方式4、可以考Spring中使用了哪些设计模式

分布式相关

 

1、分布式事务的控制。

2、分布式锁如何设计。

3、分布式session如何设计

4、dubbo的组件有哪些,各有什么作用。

5、zookeeper的负载均衡算法有哪些。

6、dubbo是如何利用接口就可以通信的。

 

缓存相关

 

1、redis和memcached的区别。

2、redis支持哪些数据结构。

3、redis是单线程的么,所有的工作都是单线程么。

4、redis如何存储一个String的。

5、redis的部署方式,主从,集群。

6、redis的哨兵模式,一个key值如何在redis集群中找到存储在哪里。

7、redis持久化策略。

 

框架相关

 

1、SpringMVC的Controller是如何将参数和前端传来的数据一一对应的。

2、Mybatis如何找到指定的Mapper的,如何完成查询的

3、Quartz是如何完成定时任务的。

4、自定义注解的实现。

5、Spring使用了哪些设计模式。

6、Spring的IOC有什么优势

7、Spring如何维护它拥有的bean。

[面试试题]

标签:基础   种类   定时   场景   怎么   分布式事务   握手   内存结构   读写锁   

原文地址:https://www.cnblogs.com/yanghuiping/p/11634839.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!