原文:http://blog.csdn.net/wzq6578702/article/details/42366027
第一部分 面试初级
阿里面试题目总结:
第一轮面试电话(5月6号):
1.自我介绍,包括做过项目。
2.有看过哪些JDK源码,了解哪些常用库。
3.集合框架HashMap的扩容机制,ConcurrnetHashMap的原理
java集合框架图:http://blog.csdn.net/stefanie860624/article/details/7245873
4.jvm内存模型与gc内存回收机制
5.classloader结构,是否可以自己定义一个java.lang.String类,为什么? 双亲代理机制。
6.了解哪些设计模式,6个设计原则分别是什么?每种设计原则体现的设计模式是哪个?
7.关于设计模式看了哪些书?书名是什么?
8.uml模型图画过哪些? 类图中类之间的关系有哪些,区别分别是什么?
9.画uml中类图时候用过一种虚线么?做什么用的?
10.做过应用相关性能测试的,举个例子,实际项目中怎么使用的。
用过并发框架相关的哪些内容
11.了解哪些osgi的框架?
12有没有做过jvm内存调优,如何做的,举例子,用过哪些工具?
//一些不记得了
第二轮面试视频
1.自我介绍
2.看过哪些源码
3.java的io库的类结构图所用到的设计模式如何体现
4.画出自己设计过的设计模式如何体现,画出结构图,并进行讲解。
5.画出自己做的架构的项目架构图 如何扩展等
6.数据库设计中主键id设计的原则
7.jvm内存调优用过哪些工具,jstate做什么用的?如何dump出当前线程状态?
8.并发框架是否有了解
9.classloader的双亲代理机制
10.应用服务器的jvm调优实际经验,如何做的,在哪里用到的
11.在哪里获取最新资讯,逛什么论坛。最新的Swift语言有什么看法
12.设计原则与设计模式对应
13.servlet/filter作用原理配置
14.ibatis in操作 以及一个属性的作用
15.spring aop 用了什么设计原则,自动注入配置是做什么用的
16.jboss的类加载器
17.session共享机制
18.做过最成功的一件事情是什么?
19.最大的争执是什么?
20.为什么想要离职去阿里
//问题很多,一些不记得了
第三轮面试电话:
1.现在公司负责什么?
2.项目主要目的是做什么的?
3.公司管理方式、项目问题反馈机制是什么?
4.Java 的序列化做什么用的 序列化id会出现哪些问题?
5.OSGi用过哪些?类加载器结构如何,如何在一个bundle中加载另外一个bundle中的一个类?
6.nio是否了解 阻塞之后通知机制是怎样的?
7.uml设计类图如何画,类之间关系以及区别
8.spring如何不许要配置文件加载bean定义,可能是问自动注解或者是properties文件定义bean
9.ibatis等框架是不是都是实际在使用的,技术细节
10.为什么想离职去阿里
//一些不记得了
第四轮总监面电话面试:
1.自我介绍
2.公司做什么,业务, 负责内容,汇报机制等
3.企业级应用安全相关
4.http协议,返回码,301与302区别
5.多线程并发用过哪些
6.应用服务器相关,谈最熟悉的
7.为什么离职
//这个太多不记得了,很多不太会。
第二部分 面试升级
http://lvwenwen.iteye.com/blog/1495707
第三部分 Java集合框架、IO框架、虚拟机相关、线程
l JAVA IO 设计模式彻底分析:http://blog.csdn.net/oracle_microsoft/article/details/2444947
l JVM类加载机制:http://blog.csdn.net/nysyxxg/article/details/41978019?ref=myread
l Java虚拟机学习分享:http://bbs.csdn.net/topics/390251794
l JDK动态代理实现原理:http://rejoy.iteye.com/blog/1627405
l java容器类源码分析——LinkedHashMap:http://www.iteye.com/topic/1131321
l ConcurrentHashMap:http://iwebcode.iteye.com/blog/1306640
l 解读ClassLoader:http://www.iteye.com/topic/83978
l Java并发编程:线程池的使用:http://www.cnblogs.com/dolphin0520/p/3932921.html
l 深入理解HashMap: http://www.iteye.com/topic/539465
l 需要完全掌握的集合(走读源代码):
Map m1 = newHashMap();
Map m2 = newHashtable();
Map m3 = newTreeMap();
Mapm4 = new ConcurrentHashMap();
Map m5 = new LinkedHashMap();
Set s1 = newHashSet();
Set s2 = newTreeSet();
Set s3 = newLinkedHashSet();
List l1 = newArrayList();
List l2 = new LinkedList();
Deque<String> deque = newLinkedList<String>();//栈
Queue<String> queue = newLinkedList<String>();//队列
第四部分 Tomcat以及其他项目源码
java类加载器-Tomcat类加载器:http://www.cnblogs.com/metoy/p/3917535.html
Tomcat源码分析:http://www.cnblogs.com/metoy/p/3855875.html
Spring源码走读:
《Spring_IOC_.pdf》、
《spring源码解析.pdf》、
《Spring技术内幕:深入解析Spring架构与设计原理第2版》
第五部分 理论
设计模式六大原则:http://fyd222.iteye.com/blog/1443150
计算机网络的基础诸如TCP、IP、三次握手。
第六部 推荐书籍(重点)
《阿里Java Web技术内幕(修订版)试读样章》
《深入理解_Java_虚拟机_(JVM_高级特性与最佳实践)》
此博客全部看完:http://blog.csdn.net/chjttony/article/list/
《淘宝技术这十年,完整最终确认版》
第七部分 提高(云计算方向)
《大型分布式网站架构设计与实践》
《Storm 实战:构建大数据实时计算试读样章》
《重构大数据统计试读样章》
JDK源码视频300集(讲师是尚学堂讲师高级高琪,此视频看完绝对走火入魔,慎入。。。哈哈):
链接:http://pan.baidu.com/s/1mg1JaiO密码:t21s
第八部分 算法
1、 递归、冒泡排序、归并排序、插入排序、快速排序以及他们的平均复杂度。
2、 平衡二叉树、满二叉树、红黑树。
3、 链表、数组。
4、 B树、B+数。
相关推荐
Java高阶框架面试题主要涵盖了Java开发中常用的几个关键框架,包括Spring框架、SpringMVC、Mybatis、Redis缓存、Dubbo以及SpringCloud微服务。以下是对这些知识点的详细解释: 1. **SpringMVC工作流程**: - 用户...
总之,《Java并发编程高阶技术-高性能并发框架源码解析与实战》这本书涵盖了Java并发编程的诸多核心知识点,适合有一定Java基础并希望深入研究并发编程的开发者阅读。通过学习,你不仅可以掌握并发编程的基本概念和...
本篇文章将深入探讨5阶龙格库塔方法,即标题中的"the-algorithm-of-the-5th-R-K",这是一种更为精确的积分方法,适用于对计算精度要求相对较低但又希望快速得到结果的情况。 首先,我们要理解龙格库塔方法的基本...
SQL Server高级查询与T-SQL编程是数据库管理与开发中的核心技能,涵盖了多个关键知识点。以下是对这些主题的详细说明: 1. **数据库设计**: - **需求分析**:这是设计过程的第一步,旨在理解用户的需求,确定系统...
在Java 8及更高版本中,函数式编程得到了官方的大力支持,引入了Lambda表达式、Stream API和Optional类等新特性,使得Java开发者可以更高效、简洁地编写代码。 1. **Lambda表达式**: Lambda表达式是Java函数式...
MATLAB高阶谱工具箱-Higher-Order Spectral Analysis Toolbox.rar MATLAB高阶谱工具箱 Matlab中文论坛: www.iLoveMatlab.cn
在学习和研究时间序列分析—高阶统计量方法时,读者需要掌握一些关键知识点,包括但不限于以下几点: 1. 时间序列的基本概念:包括时间序列的平稳性、季节性、趋势性、周期性和随机性的理解和辨识。 2. 统计量及其...
- 高阶函数、偏应用等函数式编程特性需要被适当地转换为Java代码。 - 使用Java 8及更高版本引入的Lambda表达式和Stream API可以帮助实现这些功能。 3. **惰性求值的实现**: - Haskell中的惰性求值机制很难直接...
Java函数式编程是一种将函数作为一等公民的编程范式,它强调使用函数来构造程序,减少...通过理解和熟练掌握上述知识点,开发者可以更好地利用Java 8及以后的版本进行高效、简洁的函数式编程,提升代码质量和开发效率。
大厂学院高阶班java并发编程面试视频资料(6.95G) 〖课程介绍〗: 大厂学院高阶班java并发编程面试视频资料(6.95G) 〖课程目录〗: 01_前言.mp4 44.96M 02_线程的start方法.mp4 68.78M 03_进程线程管程.mp4 54.58M ...
整体来看,本《ThinkPHP5高阶实战教程 --诠释为API开发而生》是一份全面的ThinkPHP5学习和实战指南,不仅覆盖了ThinkPHP5的基础知识和核心功能,还包含了进阶技巧和实战应用。对于希望提高ThinkPHP5应用开发效率和...
高阶谱书Higher-Order Spectral Analysis Toolbox MATALB 高阶谱分析工具箱原版介绍
低阶到高阶的矩阵变换_matlab 该代码通过行列乘法将6阶矩阵扩展为40阶。 在使用Bmn系数计算传输损耗时,我们必须将6*6矩阵转换为40*40。该程序将6个单位的B系数转换为40个单位Bmn系数所需的数据。 Matrix ...
Java 模拟 JavaScript 的高阶函数是编程领域中一个有趣且实用的主题,它涉及到语言间的特性差异和跨语言编程的概念。在JavaScript中,高阶函数是指可以接受其他函数作为参数或者返回函数作为结果的函数。这在处理回...
本程序采用java编写,具有计算n阶行列式的功能。采用递归算法实现,将一个高阶行列式不断展开,直到变成2阶,然后计算。用输入框获取输入,单击按钮执行程序。通过本程序,可以学习递归算法、BorderLayout和...
20241123-四元数高阶奇异值分解-(2-3):https://blog.csdn.net/qq_45913057/article/details/143997437
20241123-四元数高阶奇异值分解-(8-12):https://blog.csdn.net/qq_45913057/article/details/143997709
20241123-四元数高阶奇异值分解-(6-7):https://blog.csdn.net/qq_45913057/article/details/143997597
20241123-四元数高阶奇异值分解-(4-5):https://blog.csdn.net/qq_45913057/article/details/143997554
集中的知识点,适用于已经学过之后,快速过一遍复习(临时抱佛脚),比如面试前复习一下。不适用于没学过这些知识点的或者完全不懂英文的。包括spring注解,maven,git,java集合,泛型,jdk8,jvm参数,正则表达式...