2015年Java开发岗位面试题归类

一、Java基础

  1. String类为什么是final的。

2.
HashMap底源码,实现原理,底层结构。

3.
说说公明白之几个Java集合类:list、set、queue、map实现类咯。。。

4.
讲述一下ArrayList和LinkedList各自实现同分

5.
Java中之班都发怎么样,有什么区别。

6.
反射中,Class.forName和classloader的区别

7.
Java7、Java8之新特性(baidu问底,好BT)

8.
Java数组和链表两栽结构的操作效率,在怎样状况下(从开始开始,从最终开始,从中间开始),哪些操作(插入,查找,删除)的效率高

9.
Java内存泄露的问题调研定位:jmap,jstack的运用等等

10.
string、stringbuilder、stringbuffer区别

  1. hashtable和hashmap的区别

13
.异常的构造,运行时颇以及无运行时好,各举个例

  1. String a= “abc” String b = “abc”
    String c = new String(“abc”) String d = “ab” + “c” .他们中因此 ==
    比较的结果

  2. String 类的常用方法

  3. Java 的援类型有啊几种植

17. 抽象类和接口的别

  1. java的功底项目以及字节大小。

19.
Hashtable,HashMap,ConcurrentHashMap 底层实现原理与线程安全题材(建议熟悉 jdk 源码,才会从容应对)

20.
而无让你用Java Jdk提供的家伙,你自己实现一个Map,你怎么开。说了久久,说了HashMap源代码,如果本身开,就会见借鉴HashMap的原理,说了扳平连片HashMap实现

21.
Hash冲突怎么处置?哪些解决散列冲突之办法?

22.
HashMap冲突很厉害,最差性能,你晤面怎么化解?从O(n)提升及log(n)咯,用二叉排除序树的思路说了平等衔接

  1. rehash

24.
hashCode() 与 equals() 生成算法、方法怎么再写

二、Java IO

1.
谈话出口IO里面的常见类,字节约流、字符流、接口、实现类似、方法阻塞。

  1. 讲讲NIO。

  2. String 编码UTF-8 和GBK的区别?

4.
啊时以字节流、什么时候下字符流?

5. 递归读取文件夹下之文件,代码怎么落实

三、Java Web

1.
session及cookie的区分与联络,session的生命周期,多个劳务配置时session管理。

  1. servlet的部分相关题材

  2. webservice相关问题

4.
jdbc老是,forname方式的步骤,怎么声明使用一个作业。举例并具体代码

5.
无论框架下安排web.xml的主要配置内容

  1. jsp和servlet的区别

四、JVM

  1. Java的内存模型与GC算法

  2. jvm性能调优都召开了啊

3.
介绍JVM中7单区域,然后把每个区域或引致内存的溢出起底情证明

  1. 介绍GC 和GC Root不正常引用。

5.
自己打classload 加载方式,加载机制说开去,从程序运行时数据区,讲到内存分配,讲到String常量池,讲到JVM垃圾回收机制,算法,hotspot。反正就是各种扩展

6.
jvm 如何分配直接内存, new 对象如何不分配在积而是栈上,常量池解析

7. 数组多特别居 JVM 老年代(不只有是安装 PretenureSizeThreshold ,问便多很,没做过一样问问即知)

8. 始终年代中数组的访问方式

9.
GC 算法,永久代对象如何 GC , GC 有环怎么处理

10. 哪位会为 GC ,什么时候 GC

11. 若想不给 GC 怎么处置

12. 要想在 GC 中在世 1 次怎么处置

五、开源框架

  1. hibernate和ibatis的区别

  2. 讲说mybatis的连接池。

3.
spring框架中要引用哪些jar包,以及这些jar包的用

  1. springMVC的原理

  2. springMVC注解的意

6.
spring中beanFactory和ApplicationContext的牵连与分

7.
spring注入的几种植方法(循环注入)

  1. spring如何落实事物管理之

  2. springIOC

  3. spring AOP的原理

11.
hibernate着之1级和2级缓存的运方法及界别原理(Lazy-Load的明白)

12.
Hibernate底规律体系架构,五万分骨干接口,Hibernate对象的老三栽状态转换,事务管理。

六、多线程

1.
Java创造线程之后,直接调用start()方法及run()的界别

2.
常用的线程池模式和不同线程池的采用状况

3.
newFixedThreadPool此种线程池如果线程数及最好深价值后会怎么处置,底层原理。

4.
多线程之间通信的并问题,synchronized锁的凡目标,衍伸出和synchronized相关很多的具体问题,例如同一个看似不同方式都有synchronized锁,一个对象是不是可以而且做客。或者一个近乎的static构造方法加上synchronized之后的吊的震慑。

  1. 叩问只是还入锁的意义,以及ReentrantLock
    和synchronized的界别

6.
联名的数据结构,例如concurrentHashMap的源码理解与中间贯彻原理,为什么他是一起的还效率高

  1. atomicinteger和Volatile齐线程安全操作的显要字之知晓以及应用

  2. 线程间通信,wait和notify

  3. 定时线程的下

10.
气象:在一个主线程中,要求来恢宏(很多众)子线程执行完毕之后,主线程才执行好。多种智,考虑效率。

  1. 过程以及线程的区别

  2. 哎让线程安全?举例说明

  3. 线程的几乎种植状态

  4. 出现、同步的接口或艺术

15.
HashMap 是否线程安全,为何不安全。 ConcurrentHashMap,线程安全,为何安全。底层实现是怎么样的。

16.
J.U.C下的常见类的使用。 ThreadPool的中肯考察; BlockingQueue的应用。(take,poll的区分,put,offer的区别);原子类的落实。

17.
简介绍下多线程的场面,从立一个线程开始。然后怎么控制并过程,多线程常用的艺术和结构

  1. volatile的理解

19.
促成多线程有几乎栽艺术,多线程同步怎么开,说说几单线程里常用的办法

七、网络通信

1.
http凡不管状态通信,http的呼吁方式发生什么,可以协调定义新的求方式吗。

2.
socket通信,以及丰富连,分包,连接老断开的拍卖。

3.
socket通信模型的行使,AIO和NIO。

4.
socket框架netty的用,以及NIO的落实原理,为什么是异步非阻塞。

  1. 手拉手同异步,阻塞与非阻塞。

6.
OSI七层模型,包括TCP,IP的一些基本知识

  1. http中,get post的区别

8.
说说http,tcp,udp之间涉及和区别。

9.
说说浏览器访问www.taobao.com,经历了哪的过程。

  1. HTTP协议、 
    HTTPS商讨,SSL协议及整体交互过程;

11.
tcp的围堵,快磨传,ip的报文丢弃

12.
https甩卖的一个进程,对如加密跟不对如加密

  1. head各个特点以及界别

14.
说说浏览器访问www.taobao.com,经历了争的进程。

八、数据库MySql

  1. MySql的蕴藏引擎的两样

  2. 单个索引、联合索引、主键索引

3.
Mysql庸分表,以及分表后如果想循标准分页查询怎么处置(如果非是依分表字段来询问的话,几乎效率低下,无解)

4.
分表之后想让一个id多单说明是自增的,效率实现

5.
MySql之为主实时备份同步的安排,以及原理(从库读主库的binlog),读写分离

  1. 写SQL语句。。。

  2. 目的数据结构,B+树

8.
事务之季单性状,以及个别的风味(原子、隔离)等等,项目怎么解决这些题材

9.
数据库的锁:行锁,表锁;乐观锁,悲观锁

  1. 数据库事务之几种植粒度;

11. 关系型和非关系型数据库区别

九、设计模式

1.
单例模式:饱汉、饿汉。以及饿汉中之推移加载,双重检查

2.
厂模式、装饰者模式、观察者模式。

3. 厂子方法模式之助益(低耦合、高内聚,开放封闭原则)

十、算法

1.
运用随机算法来一个屡,要求把1-1000W之间这些往往周变迁。(考察高效率,解决来冲突的题材)

  1. 有数只来序数组的联结排序

  2. 一个数组的倒序

  3. 算一个恰巧整数的正平方根

5.
说白了不畏是广泛的那些查找、排序算法和分级的时刻复杂度

  1. 二叉树的遍历算法

  2. DFS,BFS算法

9.
比较根本之数据结构,如链表,队列,栈的着力掌握以及盖实现。

10. 排序算法和时空复杂度(快排为什么非平静,为什么而的类还以就此)

  1. 逆波兰计算器

  2. Hoffman 编码

13. 查找树和红黑树

十一、并发与性调优

1.
起个各秒钟5k单请求,查询手机号所属地的笔试题(记得不整,没列出),如何筹划算法?请求重多,比如5w,如何统筹总体系统?

2.
胜似并作情况美学原理下,我们系是怎么样支持大量的请的

  1. 集群如何共同会话状态

4. 负载均衡的原理

5
.如果生一个特意深之访问量,到数据库及,怎么开优化(DB设计,DBIO,SQL优化,Java优化)

6.
假设起大面积出现,在未搭服务器的底子及,如何化解服务器响应不及时问题“。

7.
如你的花色起性能瓶颈了,你看可能会见是哪些方面,怎么化解问题。

8.
安寻找 造成 性能瓶颈出现的岗位,是何人位置照成性能瓶颈。

9. 君的种类面临应用了缓存机制也?有无因此用户非本地缓存

十二、其他

1.常用之linux下之命

 

保存下,慢慢看。。。。