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

一、Java基础

  1. String类为啥是final的。

2.
HashMap的源码,完结原理,底层结构。

3.
说说你明白的几个Java集合类:list、set、queue、map完结类咯。。。

4.
描述一下ArrayList和LinkedList各自达成和区分

5.
Java中的队列都有啥,有哪些差异。

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

7.
Java七,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提供的工具,你自身已毕3个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方式的步骤,怎么注明使用1个作业。举例并切实代码

5.
无框架下安插web.xml的重中之重布局内容

  1. jsp和servlet的区别

四、JVM

  1. Java的内存模型以及GC算法

  2. jvm品质调优都做了什么

3.
介绍JVM中五个区域,然后把每种区域或然造成内存的溢出的景况注明

  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锁,二个目的是或不是可以而且做客。或然3个类的static构造方法加上synchronized之后的锁的影响。

  1. 打探可重入锁的意思,以及ReentrantLock
    和synchronized的分别

6.
联手的数据结构,例如concurrentHashMap的源码了然以及中间贯彻原理,为啥她是联合的且成效高

  1. atomicinteger和Volatile等线程安全操作的重点字的敞亮和应用

  2. 线程间通讯,wait和notify

  3. 定时线程的运用

10.
处境:在1个主线程中,需求有大量(很多众多)子线程执行完事后,主线程才执行到位。多样方法,考虑功效。

  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个数,要求把1-一千W之间那么些数全体变迁。(考察高效能,消除爆发争辨的标题)

  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下的下令

 

保存下,慢慢看。。。。

相关文章