Java面试经
最近趁有空整理下面试经常会被问到的知识点,参考的资料都是本人通过百度而挑选出来的,具有一定的参考意义。
一 、java基础
1.String和StringBuffer、StringBuild的区别:http://blog.csdn.net/rmn190/article/details/1492013
2.hashcode和equals方法的关系:http://blog.csdn.net/lijiecao0226/article/details/24609559
3.自动装箱和拆箱:https://www.cnblogs.com/danne823/archive/2011/04/22/2025332.html
4.java中的集合类:https://www.cnblogs.com/leeplogs/p/5891861.html
5.HashMap与HashTable、ConcurrentHashMap区别:https://www.cnblogs.com/wang-meng/p/5808006.html
6.java中的异常:http://www.importnew.com/26613.html
7.NIO、BIO与AIO:http://blog.51cto.com/stevex/1284437
[多线程]
8.多线程实现方式:https://www.cnblogs.com/felixzh/p/6036074.html
9.线程的状态转换:http://blog.csdn.net/sinat_36042530/article/details/52565296
10.如何停止一个线程:https://www.cnblogs.com/greta/p/5624839.html
11.什么是线程安全:http://blog.csdn.net/ghevinn/article/details/37764791
12.synchronized和lock的区别:http://blog.csdn.net/u012403290/article/details/64910926?locationNum=11&fps=1
13.sleep和wait区别:http://blog.csdn.net/u012050154/article/details/50903326
14.java线程池:http://www.importnew.com/19011.html
15.并发工具类:http://blog.csdn.net/sunxianghuang/article/details/52277394
16.并发容器类:http://blog.csdn.net/jianghuxiaojin/article/details/52006183
17.volatile关键字:http://blog.csdn.net/victor_cindy1/article/details/44310195
二、java虚拟机
1.Jvm垃圾收集器与内存分配策略:http://www.importnew.com/23035.html
2.Jvm运行和类加载过程:https://www.cnblogs.com/dooor/p/5289994.html
3.Jvm字节码执行:http://blog.csdn.net/u012077981/article/details/40156391
4.java内存模型:http://blog.csdn.net/suifeng3051/article/details/52611310;
http://www.hao124.net/article/49
三、spring
1.spring的特点及好处:https://www.cnblogs.com/song1314/articles/4568379.html
2.spring的69面试题:https://www.cnblogs.com/huajiezh/p/6415276.html
3.spring简化java开发复杂性的策略:http://blog.csdn.net/running_nz/article/details/54583100
4.spring循环依赖及解决办法:http://blog.csdn.net/caomiao2006/article/details/46511123
5.springmvc工作流程和原理:http://blog.csdn.net/liangzi_lucky/article/details/52459378
6.spring注解原理:http://blog.csdn.net/u010987379/article/details/52152795
四、mybatis
1.mybatis常用api:https://www.cnblogs.com/haimishasha/p/5710474.html
2.mybatis分页及分页插件原理:http://blog.csdn.net/jaryle/article/details/52315565
3.mybatis插件原理:http://blog.csdn.net/hupanfeng/article/details/9247379
4.mybatis动态sql原理:http://www.importnew.com/24160.html
5.mybatis延迟加载:http://blog.csdn.net/eson_15/article/details/51668523
五、mysql
1.各个数据库引擎区别:http://www.jb51.net/article/38004.htm
2.索引的使用注意事项:https://www.cnblogs.com/zlingh/p/3883716.html
六、redis
1.redis五大数据类型:http://www.runoob.com/redis/redis-data-types.html
2.redis的两个持久化策略:http://blog.csdn.net/u010785685/article/details/52366977
3.redis如何事务支持:https://www.cnblogs.com/kyrin/p/5967620.html
4.redis哨兵机制:http://blog.csdn.net/zbw18297786698/article/details/52891695
5.redis集群方案:https://www.zhihu.com/question/21419897
6.redis主从同步策略:http://blog.csdn.net/sk199048/article/details/50725369
七、通讯协议
1.TCP长连接和短连接:https://www.cnblogs.com/onlysun/p/4520553.html
2.TCP与UDP区别:http://blog.csdn.net/li_ning_/article/details/52117463
3.TCP三次握手四次挥手过程:https://www.cnblogs.com/Andya/p/7272462.html
4.http几个重要概念:http://blog.csdn.net/drixe/article/details/1893558
5.http的报文结构:http://blog.csdn.net/zhangliang_571/article/details/23508953
6.GET/POST以及幂等性:http://blog.csdn.net/dongzhiquan/article/details/6113966
7.http request的几种类型:https://www.cnblogs.com/liangxiaofeng/p/5798607.html
8.http几个版本之间的区别:http://blog.csdn.net/zocojoker/article/details/53868639
八、数据结构与算法
[数据结构]
1.队列:http://blog.csdn.net/javazejian/article/details/53375004
2.堆栈:http://blog.csdn.net/javazejian/article/details/53362993
3.链表:http://blog.csdn.net/jianyuerensheng/article/details/51200274
4.树:[二叉树]http://blog.csdn.net/javazejian/article/details/53727333
[B树]http://blog.csdn.net/liuquan0071/article/details/50521032
[哈夫曼树]http://blog.csdn.net/axi295309066/article/details/54019807
[算法]
5.(图)广度优先、深度优先:https://segmentfault.com/a/1190000002685939
6.常见排序算法:https://www.cnblogs.com/qqzy168/archive/2013/08/03/3219201.html
7.常见查找算法:http://blog.csdn.net/wqc_csdn/article/details/52691019
8.hash原理:http://blog.csdn.net/tanggao1314/article/details/51457585
9.hashmap实现:https://www.cnblogs.com/chengxiao/p/6059914.html
九、dubbo
1.什么是rcp框架:https://www.cnblogs.com/ChrisMurphy/p/6550184.html
2.序列化方式方式及作用:http://blog.csdn.net/u012554102/article/details/51902697
3.dubbo底层协议实现:https://www.cnblogs.com/1201x/p/6482638.html
4.dubbo注册中心如何设置:http://blog.csdn.net/u011659172/article/details/51491518
5.dubbo负载均衡的理解:https://www.cnblogs.com/qingfengbuluo/p/5527930.html
6.dubbo容错机制:https://www.2cto.com/kf/201612/572681.html
7.服务调用超时的实现原理:https://www.cnblogs.com/ASPNET2008/p/7292472.html
8.服务注册与发现的流程:http://doc.okbase.net/661116/archive/241946.html
未完待续...
还有好些内容,后面会慢慢整理出来
我有一个微信公众号,经常会分享一些Java技术相关的干货。如果你喜欢我的分享,可以用微信搜索“Java团长”或者“javatuanzhang”关注。
Java面试经的更多相关文章
- JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结
我是一名java开发人员,hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和 ...
- 转:最近5年133个Java面试问题列表
最近5年133个Java面试问题列表 Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来 ...
- java面试宝典(蓝桥学院)
Java面试宝典(蓝桥学院) 回答技巧 这套面试题主要目的是帮助那些还没有java软件开发实际工作经验,而正在努力寻找java软件开发工作的学生在笔试/面试时更好地赢得好的结果.由于这套试题涉及的范围 ...
- JAVA面试精选【Java基础第一部分】
这个系列面试题主要目的是帮助你拿轻松到offer,同时还能开个好价钱.只要能够搞明白这个系列的绝大多数题目,在面试过程中,你就能轻轻松松的把面试官给忽悠了.对于那些正打算找工作JAVA软件开发工作的童 ...
- Java面试必备知识
JAVA面试必备知识 第一,谈谈final, finally, finalize的区别. 第二,Anonymous Inner Class (匿名内部类) 是否可以extends(继承)其它类,是否可 ...
- java面试和笔试大全 分类: 面试 2015-07-10 22:07 10人阅读 评论(0) 收藏
2.String是最基本的数据类型吗? 基本数据类型包括byte.int.char.long.float.double.boolean和short. java.lang.String类是final类型 ...
- 近5年133个Java面试问题列表
Java 面试随着时间的改变而改变.在过去的日子里,当你知道 String 和 StringBuilder 的区别就能让你直接进入第二轮面试,但是现在问题变得越来越高级,面试官问的问题也更深入. 在我 ...
- java 面试
115个Java面试题和答案——终极列表(上) 本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力.下面的章节分为上下两篇,第一 ...
- 【Java面试】基础知识篇
[Java面试]基础知识篇 Java基础知识总结,主要包括数据类型,string类,集合,线程,时间,正则,流,jdk5--8各个版本的新特性,等等.不足的地方,欢迎大家补充.源码分享见个人公告.Ja ...
- JAVA面试中问及HIBERNATE与 MYBATIS的对比,在这里做一下总结(转)
hibernate以及mybatis都有过学习,在java面试中也被提及问道过,在项目实践中也应用过,现在对hibernate和mybatis做一下对比,便于大家更好的理解和学习,使自己在做项目中更加 ...
随机推荐
- 面向对象 初级版 (Preview) 未完
概述: 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数里,日后使用无需重复编写,直接调用韩顺即可. 面向对象: 对函数进行分类和封装,让开发'更快更强' 面向对象和面向过程的通 ...
- Python的变量和常量
解释器执行Python的过程: (python3,c:/test.py) 1:启动python解释器(内存中). 2:将c:/test.py内容从硬盘读到内存中(这一步和文本编辑器是一样的). 3 ...
- arm-linux-objdump反汇编使用指南
一. arm-linux-objdump常用来显示二进制文件信息,常用来查看反汇编代码 二. 常用选项: 1.-b bfdname 指定目标码格式 2.-disassemble或者-d 反汇编 ...
- Python day 7(1) 模块
一:模块 1 在Python中,一个.py文件就称之为一个模块(Module) 2 Python的好处,优点: a 提高了代码的可维护性 b 当一个模块编写完毕,就可以被其他地方引用.我们在编写程 ...
- Yarn篇--搭建yran集群
一.前述 有了上次hadoop集群的搭建,搭建yarn就简单多了.废话不多说,直接来 二.规划 三.配置如下 yarn-site.xml配置 <property> <n ...
- H5前端性能测试总结
测试关注指标 Http请求个数 同一个域名不同浏览器内核.不同版本浏览器,大部分并发请求数是6个: 优化方案: a.雪碧图:即CSS Sprite,也称CSS精灵,是一种CSS图像合并技术,该方法是将 ...
- 常见的DBCP连接池配置
项目中使用mybatis出现一个问题,项目刚启动时,查询项目列表是ok的,过上一段时间之后,再次查询项目列表,查询失败,初步判断是因为mysql的连接问题,最后查阅资料,发现是连接池中的连接失效,导致 ...
- java指令重排序的问题
转载自于:http://my.oschina.net/004/blog/222069?fromerr=ER2mp62C 指令重排序是个比较复杂.觉得有些不可思议的问题,同样是先以例子开头(建议大家跑下 ...
- python2.7源码编译安装
最近学习docker容器,因为平时用的linux发型版都是centos6系列,所有pull了一个centos:6.6的景像,运行景像,进入容器后,发现其默认的python环境是2.6,为了更好的兼容我 ...
- Centos搭建Docker环境
安装Docker 安装Docker Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum 命令: yum install d ...