朋友去阿里进行的技术面,历经了二个多小时,面试的是Java开发工程师,出来后立马拿手机记录了面试问的知识点,知识点包括Java基础和高级、spring、多线程、网络、数据库、算法、Redis、分布式、高并发等。
加上我自己总结的BAT面试Java高级爱问的知识点,组成了这些面试题!有需要的同学可以提早准备,文末有面试答案以及技术分享!
spring框架
spring框架中需要引用哪些jar包,以及这些jar包的用途
spring注入的几种方式
spring如何实现事物管理的
springIOC和AOP的原理
spring中循环注入的方式
Spring AOP与IOC的实现原理
Spring的beanFactory和factoryBean的区别
Spring的事务隔离级别,实现原理
对Spring的理解,非单例注入的原理?它的生命周期?循环注入的原理,aop的实现原理,说说aop中的几个术语,它们是怎么相互工作的?
spring boot特性,优势,适用场景等
由于篇幅限制,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!有需要的程序猿(媛)可以见文末获取哦
数据库MySql
InnoDB与MyISAM的区别
数据库的三范式是什么
简单说一说drop、delete与truncate的区别
什么是内联接、左外联接、右外联接?
并发事务带来哪些问题?
事务隔离级别有哪些?MySQL的默认隔离级别是?
简述在 MySQL 数据库中 MyISAM 和 InnoDB 的区别
如果一个表有一列定义为 TIMESTAMP,将发生什么?
java多线程常见问题
Java中实现多线程有几种方法
继承 Thread 类
实现 Runnable 接口。
ExecutorService、 Callable、 Future 有返回值线程
如何停止一个正在运行的线程
notify()和notifyAll()有什么区别?
sleep()和wait() 有什么区别?
volatile 是什么?可以保证有序性吗?
Java中interrupted 和 isInterruptedd方法的区别?
Java中synchronized 和 ReentrantLock 有什么不同?
什么是线程安全?Vector是一个线程安全类吗?
tryLock 和 lock 和 lockInterruptibly 的区别
Semaphore 与 ReentrantLock 区别
算法&数据结构&设计模式
使用随机算法产生一个数,要求把1-1000W之间这些数全部生成。(考察高效率,解决产生冲突的问题)
两个有序数组的合并排序
一个数组的倒序
计算一个正整数的正平方根
说白了就是常见的那些查找排序算法
数组和链表数据结构描述,各自的时间复杂度
二叉树遍历
快速排序
BTree相关的操作
在工作中遇到过哪些设计模式,是如何应用的
hash算法的有哪几种,优缺点,使用场景
篇幅太多了,又加上篇数限制,一一列出来影响阅读,还不如获取慢慢参考,以备不时之需
分布式缓存
Redis 与其他 key-value 存储有什么不同?
为什么Redis的操作是原子性的,怎么保证原子性的?
Redis 的持久化机制是什么?各自的优缺点?
Redis 集群方案什么情况下会导致整个集群不可用?
假如 Redis 里面有 1 亿个 key,其中有 10w 个 key 是以某个固定的已知的前缀开头的,如果将它们全部找出来?
都有哪些办法可以降低 Redis 的内存使用情况呢?
一个 Redis 实例最多能存放多少的 keys?List、Set、Sorted Set 他们最多能存放多少元素
线程池、高并发、NIO
分析线程池的实现原理和线程的调度过程
线程池如何调优
线程池的最大线程数目根据什么确定
cloneable接口实现原理,浅拷贝or深拷贝
Java NIO使用
hashtable和hashmap的区别及实现原理,hashmap会问到数组索引,hash碰撞怎么解决
arraylist和linkedlist区别及实现原理
反射中,Class.forName和ClassLoader区别
JVM相关(面试必考)
JVM 选项 -XX:+UseCompressedOops 有什么作用?为什么要使用
JRE、JDK、JVM 及 JIT 之间有什么不同?
怎么获取 Java 程序使用的内存?堆使用的百分比?
描述一下 JVM 加载 class 文件的原理机制
GC 是什么?为什么要有 GC?
Parallel Scavenge 收集器(多线程复制算法、高效)
什么时候会触发FullGC
什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?
描述一下JVM加载class文件的原理机制?
Minor GC与Full GC分别在什么时候发生?
分布式相关
Dubbo的底层实现原理和机制
消息中间件如何解决消息丢失问题
Dubbo的服务请求失败怎么处理
重连机制会不会造成错误
对分布式事务的理解
如何实现负载均衡,有哪些算法可以实现?
Zookeeper的用途,选举的原理是什么?
数据的垂直拆分水平拆分。
如何做一个分布式锁
用过哪些MQ,怎么用的,和其他mq比较有什么优缺点,MQ的连接是线程安全的吗
MQ系统的数据如何保证不丢失
列举出你能想到的数据库分库分表策略;分库分表后,如何解决全表查询的问题。
springboot
Spring Boot 的核心注解是哪个?它主要由哪几个注解组成的?
如何在Spring Boot启动的时候运行一些特定的代码?
如何理解 Spring Boot 配置加载顺序
如何实现 Spring Boot 应用程序的安全性?
什么是 Swagger?你用 Spring Boot 实现了它吗?
如何重新加载 Spring Boot 上的更改,而无需重新启动服务器?
如何在 Spring Boot 中禁用 Actuator 端点安全性?
Spring Boot 支持哪些日志框架?推荐和默认的日志框架是哪个?
Spring Boot 可以兼容老 Spring 项目吗,如何做?
如何重新加载Spring Boot上的更改,而无需重新启动服务器?
Spring Boot、Spring MVC 和 Spring 有什么区别?
Spring 是如何快速创建产品就绪应用程序的?
创建一个 Spring Boot Project 的最简单的方法是什么?
面试答案!
关于面试答案已经整理出来了,这次技术面试针对的岗位是阿里P7,各位可以比较一下!
由于篇幅限制小编,细节内容实在太多啦,所以只把部分知识点截图出来粗略的介绍,每个小节点里面都有更细化的内容!资料获取方式:
关注我+分享本文后,私信【答案】即可获得资料免费获取方式!
关注我+分享本文后,私信【答案】即可获得资料免费获取方式!
网友评论