【文件属性】:
文件名称:java核心面试
文件大小:17KB
文件格式:DOCX
更新时间:2017-05-08 09:11:52
java 面试
线程 单例模式下的线程安全http://blog.sina.com.cn/s/blog_75247c770100yxpb.html
map集合 集合数据结构及方法的使用
多线程 线程进程 线程状态 线程状态的改变
sql :临时表、游标、存贮过程、触发机制http://www.cnblogs.com/SkySoot/archive/2012/04/09/2439190.html
jvm工作原理
JVM中类的装载是由ClassLoader和它的子类来实现的,Java ClassLoader 是一个重要的Java运行时系统组件。它负责在运行时查找和装入类文件的类。
1说说JVM原理?内存泄露与溢出区别,何时产生内存泄露?
编译源代码为本地机器码执行。
内存泄露是一部分内存无法回收。溢出是说内存不够用了。泄露可能在将来会导致溢出
当对象在程序中不会被使用,但却有其他对象持有该对象时会发生溢出。比如出现持有的环的情况。
java并发面试题 .内存存储锁控制
http://blog.csdn.net/geolo/article/details/8670900
4.请说明下java的内存模型及其工作流程。
答:Java把内存划分成两种:一种是栈内存,一种是堆内存。
栈内存:存放对象:函数中基本类型的变量和对象的引用变量、静态类方法 ;特点:栈有一个很重要的特殊性,就是存在栈中的数据可以共享。
堆内存:存放对象:用来存放由new创建的对象和数组;特点:在堆中分配的内存,由Java虚拟机的自动垃圾回收器来管理。
java 内存模型 ( java memory model ):根据Java Language Specification中的说明, jvm系统中存在一个主内存(Main Memory或Java Heap Memory),Java中所有对象成员变量都储存在主存中,对于所有线程都是共享的。每条线程都有自己的工作内存(Working Memory),工作内存中保存的是主存中某些对象成员变量的拷贝,线程对所有对象成员变量的操作都是在工作内存中进行,线程之间无法相互直接访问,变量传递均需要通过主存完成。
(1) 获取对象监视器的锁(lock)
(2) 清空工作内存数据, 从主存复制对象成员变量到当前工作内存, 即同步数据 (read and load)
(3) 执行代码,改变共享变量值 (use and assign)
(4) 将工作内存数据刷回主存 (store and write)
(5) 释放对象监视器的锁 (unlock)
spring框架原理
10. spring工作机制及为什么要用?
1.spring mvc请所有的请求都提交给DispatcherServlet,它会委托应用系统的其他模块负责负责对请求进行真正的处理工作。
2.DispatcherServlet查询一个或多个HandlerMapping,找到处理请求的Controller.
3.DispatcherServlet请求提交到目标Controller
4.Controller进行业务逻辑处理后,会返回一个ModelAndView
5.Dispathcher查询一个或多个ViewResolver视图解析器,找到ModelAndView对象指定的视图对象
6.视图对象负责渲染返回给客户端。