第一部分:java基础javascript
JVM和GC:java虚拟机内存分配,类加载机制(双亲委派模型,Bootstrap Classloader, Extension ClassLoader, Application ClassLoader),Eden space,from space,to space,old generation,perm generation,minor GC,full GC,垃圾回收算法(复制,标记整理,标记清除,分代),JVM监测和性能优化工具,JVisualVM,jmap,jConsole;css
java概述:标识符,关键字,基本变量类型四类八种,判断循环表达式,递归;html
java面向对象:abstract,interface,static,final,extends,重写和重载,构造方法,内存分配,反射,注解;前端
异常处理:try, catch, throw, throws, finally,异常处理与重写的关系;运行时异常与非运行时异常;先逮小的,后逮大的;html5
数组:数组的内存结构,经常使用的数组方法;java
经常使用类:String,StringBuffer,StringBuilder,File,Math;linux
容器和并发容器:Collection,List,Set,Queue,Deque,Map,Vector,ArrayList,LinkedList,Hashtable,HashMap,LinkedHashMap,CoucurrentHashMap,BlockingQueue,BlockingDeque,ArrayBlockingQueue,LinkedBlockingQueue,泛型,生产者-消费者模型;git
IO/NIO:InputStream,OutputStream,Reader,Writer,File,Socket,Buffer,Channel,FileChannel,DatagramChannel,SocketChannel,ServerSocketChannel,Selector,SelectionKey,同步异步,阻塞非阻塞ajax
多线程/并发编程:synchronize,ReentrantLock,ReentrantReadWriteLock,AtomicInteger,volatile,线程池算法
网络编程:TCP/IP协议详解,http协议及状态码;
java设计模式:建立性,工厂方法,抽象工厂,单例,建造者,原型,结构性,适配器,代理,装饰,桥接,享元,组合,行为性,模板方法,策略,观察者,责任链;
经常使用的数据结构和算法:线性结构,线性表,链表,队列,栈,数组,串,非线性结构,树,二叉树,红黑树,经常使用的排序算法,冒泡排序,快速排序,选择排序;
jsp,servlet,cookie,sesssion,jdbc,session的分布式管理;
第二部分:框架应用状况
SpringMVC,hibernate,spring IOC,AOP框架的理解和原理;
缓存机制:Ehcache,Redis,Memcached原理;
消息机制:ActiveMQ,ZeroMQ,RabbitMQ,RocketMQ原理;
搜索机制:Lucene,solor原理;
网络通讯:MINA,Netty原理;
构建高性能、高可用、可伸缩、可扩展和安全性的分布式、集群服务;
系统性能优化知识;
Maven,git,checkstyle,findbugs等代码管理管理工具的使用;
第三部分:数据库知识
数据库优化;
索引;
事务;
分库分表;
第四部分:Linux
经常使用的linux命令;
linux环境下的应用部署和平常维护;
第五部分:前端知识
html,css,javascript,jQuery,html5,ajax;
前端性能优化;
https://askingwindy.gitbooks.io/gitbook-java-interview-note/content/