面试题
lanse7600
这个作者很懒,什么都没留下…
展开
-
每天一道面试题-Servlet属于线程安全的吗?
Servlet不是线程安全的。当Tomcat接收到Client的HTTP请求时,Tomcat从线程池中取出一个线程,之后找到该请求对应的Servlet对象并进行初始化,之后调用service()方法。要注意的是每一个Servlet对象再Tomcat容器中只有一个实例对象,即是单例模式。如果多个HTTP请求请求的是同一个Servlet,那么着两个HTTP请求对应的线程将并发调用Servlet的...原创 2018-09-30 10:57:34 · 151 阅读 · 0 评论 -
每天一道面试题-谈谈ArrayList和LinkedList的区别
1,首先,底层的数据结构不同ArrayList底层的数据结构是数组LinkedList底层的数据结构是双向链表2,其次,做增删改查的差异2.1 查询(定位)数组是一段连续的内存空间,所以定位快而链表需要通过上一个节点找到下一个节点,依次类推,所以定位相比数组要慢2.2 增加如果添加到末尾,则差异不大,ArrayList可能会面临扩容的情况,因为底层是数组...原创 2018-10-09 09:01:51 · 296 阅读 · 0 评论 -
每天一道面试题-转发和重定向的区别
转发和重定向,这是项目开发中的两种跳转方式,其差异也经常被拿来作为面试题。首先,转发是一次请求,就好比你到医院办理相关手续,然后这个窗口可能不能直接搞定,但是他经过内部协调处理,最终还是通过这个窗口给你反馈最终的结果,所以对于你来说,只需要跟一个窗口交互即可。而重定向,是多次请求,还是上面的例子,这个窗口搞不定你的需求,然后他会告诉你去找另一个窗口(服务器内部)或者去另一家医院办理(跳...原创 2018-10-09 09:01:43 · 431 阅读 · 0 评论 -
servlet执行流程是什么?
客户端发出http请求,web服务器将请求转发到servlet容器,servlet容器解析url并根据web.xml找到相对应的servlet,并将request、response对象传递给找到的servlet,servlet根据request就可以知道是谁发出的请求,请求信息及其他信息,当servlet处理完业务逻辑后会将信息放入到response并响应到客户端。...原创 2018-10-09 09:01:33 · 576 阅读 · 0 评论 -
AOP与IOC的概念(即spring的核心)
a) IOC:Spring是开源框架,使用框架可以使我们减少工作量,提高工作效率并且它是分层结构,即相对应的层处理对应的业务逻辑,减少代码的耦合度。而spring的核心是IOC控制反转和AOP面向切面编程。IOC控制反转主要强调的是程序之间的关系是由容器控制的,容器控制对象,控制了对外部资源的获取。而反转即为,在传统的编程中都是由我们创建对象获取依赖对象,而在IOC中是容器帮我们创建对象...原创 2018-10-09 09:01:25 · 285 阅读 · 0 评论 -
每天一道面试题-final,finally,finalize有什么区别?
这道题目的出镜率很高,来,我们直接进入主题:finalfinal修饰类,表示该类不可以被继承final修饰变量,表示该变量不可以被修改,只允许赋值一次final修饰方法,表示该方法不可以被重写finallyfinally是java保证代码一定要被执行的一种机制。比如try-finally或try-catch-finally,用来关闭JDBC连接资源,用来...原创 2018-10-07 07:05:58 · 141 阅读 · 0 评论 -
每天一道面试题-ArrayList和Vector的区别
首先,推荐大家使用ArrayList,了解这个差别,更多是为了应对面试。两者的最大差异就是线程安全ArrayList:线程不安全,但性能高Vector:线程安全,但性能较低我们如何得到一个类是线程安全或不安全的结论的?从源码的角度来说,你大可以打开ArrayList和Vector的源码一对比,即可发现ArrayList的部分源码:public boolean add(...原创 2018-09-30 11:00:47 · 324 阅读 · 0 评论 -
每天一道面试题-从源码探究HashSet的工作原理
HashSet,给我们最直观的感受就是两点,不可重复和无序,底层采用了hash存储结构。其底层是采用了HashMap,今天我们通过深入源码的方式来了解其背后的原理。我们关注的点有几个1,所谓的hash表是一个怎么样的结构?hash表底层结构是一个数组,且数组的元素是一个链表结构。给大家画个图2,是如何保证唯一的?存放进去的细节如何?首先,在hashSet的...原创 2018-09-30 11:00:24 · 113 阅读 · 0 评论 -
每天一道面试题-探究JVM中-类的加载机制
类的加载机制是怎么样的?下面我们分几个部分来讲解1,这些概念你知道是什么意思吗?相信你应该听过不少这样的词语,类加载机制,双亲委托机制,BootstrapClassLoader、ExtClassLoader、AppClassLoader如果你不清楚,这些都是什么意思?没关系,看完下面的内容,你就清楚了2,什么是类的加载机制?所谓类的加载机制是指JVM将jav...原创 2018-09-30 10:59:46 · 109 阅读 · 0 评论 -
每天一道面试题-ConcurrentHashMap vs HashMap vs LinkedHashMap vs HashTable
HashMap:查询和插入速度极快,但是线程不安全,在多线程情况下在扩容的情况下可能会形成闭环链路,耗光cpu资源。LinkedHashMap:基本和HashMap实现类似,多了一个链表来维护元素插入的顺序,因此维护的效率会比HashMap略低。但是因为有链表的存在,遍历效率会高于HashMap。HashTable:线程安全,但性能较差,已经不推荐使用...原创 2018-09-30 10:58:22 · 125 阅读 · 0 评论 -
每天一道面试题:谈谈==和equals的区别
比较基本数据类型时,只能采用==,比较的是数值当比较引用类型时,==比较的是引用的地址,而equals其实也是,我们查看到equals是Object定义的方法,而其默认的实现也是比较地址。而我们经常用到的String类型,因为重写了equals方法,其内部比较的是内容,所以String s1 = new String("永远相信美好的事情即将发生");String s2 = n...原创 2018-10-09 09:01:59 · 1336 阅读 · 0 评论