- 浏览: 105118 次
最新评论
文章列表
每天一道面试题:谈谈==和equals的区别
- 博客分类:
- 面试题
比较基本数据类型时,只能采用==,比较的是数值
当比较引用类型时,==比较的是引用的地址,而equals其实也是,我们查看到equals是Object定义的方法,而其默认的实现也是比较地址。
而我们经常用到的String类型,因为重写了equals方法,其内部比较的是内容,所以
String s1 = new String("永远相信美好的事情即将发生");
String s2 = new String("永远相信美好的事情即将发生");
System.out.println(s1.equals(s2));//true
---------- ...
1,首先,底层的数据结构不同
ArrayList底层的数据结构是数组
LinkedList底层的数据结构是双向链表
2,其次,做增删改查的差异
2.1 查询(定位)
数组是一段连续的内存空间,所以定位快
而链表需要通过上一个节点找到下一个节点,依次类推,所以定位相比数组要慢
2.2 增加
如果添加到末尾,则差异不大,
每天一道面试题-转发和重定向的区别
- 博客分类:
- 面试题
转发和重定向,这是项目开发中的两种跳转方式,其差异也经常被拿来作为面试题。
首先,转发是一次请求,就好比你到医院办理相关手续,然后这个窗口可能不能直接搞定,但是他经过内部协调处理,最终还是通过这个窗口给你反馈最终的结果,所以对于你来说,只需要跟一个窗口交互即可。
而重定向,是多次请求,还是上面的例子,这个窗口搞不定你的需求,然后他会告诉你去找另一个窗口(服务器内部)或者去另一家医院办理(跳出当前服务器),所以你需要跑多个窗口,才能完成最终的交互。
所以,转发和重定向就是这个差异。
面试题1:转发和重定向哪种方式可以传递数据?
这个问题的答案应该分情况来回答,
servlet执行流程是什么?
- 博客分类:
- 面试题
客户端发出http请求,web服务器将请求转发到servlet容器,servlet容器解析url并根据web.xml找到相对应的servlet,并将request、response对象传递给找到的
AOP与IOC的概念(即spring的核心)
- 博客分类:
- 面试题
a) IOC:Spring是开源框架,使用框架可以使我们减少工作量,提高工作效率并且它是分层结构,即相对应的层处理对应的业务逻辑,减少代码的耦合度。而spring的核心是IOC控制反转和AOP面向切面编程。IOC控制反转主要强调的是程序之间的关系是由容器控制的,容器控制对象,控制了对外部资源的获取。而反转即为,在传统的编程中都是由我们创建对象获取依赖对象,而在IOC中是容器帮我们创建对象并注入依赖对象,正是容器帮我们查找和注入对象,对象是被获取,所以叫反转。
b) AOP:面向切面编程,主要是管理系统层的业务,比如日志,权限,事物等。AOP是将封装好的对象剖开,找出其中对多个对象产生 ...
面试中,经常会遇到这样的情况,
问:谈谈运行时异常和非运行时异常?
答:运行时异常是指程序运行时发生的异常
问:那么非运行时异常又是什么时候发生?
答:。。。。。。
问:请罗列几个常见的运行时异常?
答 ...
SpringMVC 笔记
- 博客分类:
- SpringMVC
创建bean的方式:
方式1:xml文件方式
将userServiceImpl Bean注入到testController类中。两个文件中不需要任何注解
<bean id="testController" class="com.yxl.test.TestController">
<property name="userServiceImpl" value="userServiceImpl"/>
</bean>
<bean id="userS ...
这道题目的出镜率很高,来,我们直接进入主题:
final
final修饰类,表示该类不可以被继承
final修饰变量,表示该变量不可以被修改,只允许赋值一次
final修饰方法,表示该方法不可以被重写
finally
finally是java保证代码 ...
1。start():
我们先来看看API中对于该方法的介绍:
使该线程开始执行;Java 虚拟机调用该线程的 run 方法。
结果是两个线程并发地运行;当前线程(从调用返回给 start 方法)和另一个线程(执行其 run 方法 ...
Java多线程之内存可见性和原子性:Synchronized和Volatile的比较
【尊重原创,转载请注明出处】http://blog.csdn.net/guyuealian/article/details/52525724
在说明Java多线程内存可见性之前,先来简单了解一下Java内存模型。
(1)Java所有变量都存储在主内存中 (2)每个线程都有自己独立的工作内存,里面保存该线程的使用到的变量副本(该副本就是主内存中该变量的一份拷贝)
(1)线程对共享变量的所有操作都必须在自己的工作内存中进行,不能直接在主内存 ...
001-探究MVC设计的发展
- 博客分类:
- SpringMVC
首先,MVC设计是一种理念,并不局限于Java,其他的语言,比如PHP,.NET也同样可以适用。不过在开发的占比中,java依然是主要地位,所以本文将以JavaWeb来进行描述MVC的发展历程。
JavaWeb的第一代开发模式,简称Model1
以JSP+JavaBean的模式组合,这个模式会存在什么问题,我们以图说话
JavaWeb的第二代开发模式,简称Model2,也称为MVC模式
相比Model1,MVC模式引入了Servlet作为控制器,改变了这个结构关系,我们继续看图
002-漫谈SpringMVC架构
- 博客分类:
- SpringMVC
1,SpringMVC是一种基于Servlet的技术,他提供了核心控制器DispatcherServlet,整体为松散的结构,方便应对各种灵活要求。整体的架构图如下:
2,SpringMVC的整体架构围绕核心控制器DispatcherServlet来进行工作,下面我们来看看具体执 ...
003-SpringMVC快速上手
- 博客分类:
- SpringMVC
前面讲了一些理论上的知识,主要是给有经验的小伙伴做下总结,如果没有SpringMVC的开发经验,可以来阅读下这一篇,帮助你快速入门
前提说明:我们的工程都是以Maven的方式来构建,所以需要大家对Maven有一定的认识。
1,创建Maven工程,类型为war
2,引入依赖
<dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>4.3.8.RELEASE</version ...
在交互的过程中,其中一个关键的节点就是获取到客户端发送过来的请求参数,本篇文章,我们来罗列下SpringMVC对于各种数据的获取方式:
说明:以下重点在讲解如何获取参数上,所以返回的数据不是重点
1,普通方式,请求参数名跟Controller的方法参数一致
1.1 创建Controller
1.2 发送请求做测试(由于方法没有限制请求方式,所以get和post均可)