基础的笔试题第一版

1、List、 Map、 Set三个接口,存取元素时,各有什么特点?

存放时:

1.List以特定的索引(有顺序的存放)来存放元素,可以有重复的元素
2.Set存放元素是无序的,而且不可重复(用对象的equals()方法来区分元素是否重复)
3.Map保存键值对的映射,映射关系可以是一对一(键值)或者多对一,需要注意到的是:键无序不可重复,值可以重复

取出时:

(1)List取出元素for循环,foreach循环,Iterator迭代器迭代
(2)Set取出元素foreach循环,Iterator迭代器迭代
(3)Map取出元素需转换为Set,然后进行Iterator迭代器迭代,或转换为Entry对象进行Iterator迭代器迭代

2、overload和override的区别,overload的方法是否可以改变返回值的类型

区别

1、目的

overload用于增加程序的可读性(做法不同但是做的同一事情)。 override用于提供其超级类已经提供的方法的特定实现。

2、范围
overload 在相同的类范围内内执行。 override发生在两类具有继承(继承)的关系。

3、参数

overload参数必须不同,override参数必须相同。

4、多态性

overload 静态多态,调用的函数在编译时被选中。 override 是运行时多态性的。

5、返回类型

overload中可以相同或不同。但你必须改变参数。 override必须是相同的或协变的。

Overload的方法可以改变返回值的类型,因为它与返回值类型无关。

3、Java中有几种方法可以实现一个线程?用什么关键字修饰同步方法?启动一个线程是用run()还是start()?

实现多线程的方法:

1)继承Thread类创建线程
2)实现Runnable接口创建线程
3)使用Callable和FutureTask创建线程
4)使用线程池,例如用Executor框架
5)Spring实现多线程(底层是线程池)
6)定时器Timer (底层封装 了一个TimerThread对象)

使用synchronized关键字修饰同步方法

启动一个线程使用start()方法

4、jsp有哪些内置对象?作用分别是什么?

1、pagecontext
pagecontext 对象的作用是取得任何范围的参数,通过它可以获取
jsp页面的out、request、response、session、application 等对象

2、request
服务器端取得客户端的信息:头信息、Cookie、请求参数、MVC设计模式

3、response
服务器端回应给客户端信息:Cookie、重定向

4、session
表示每一个用户,用于登录验证上

5、application
application对象可将信息保存在服务器中,直到服务器关闭,否则application对象中保存的信息会在整个应用中都有效。

6、config
config 对象的主要作用是取得服务器的配置信息。

7、exception
表示的是错误页的处理操作

8、page
如同this一样,表示整个JSP页面

9、out
输出,但是尽量使用表达式输出

5、说一说servlet的生命周期

Servlet生命周期共4个阶段:

 实例化---初始化---服务--销毁

实例化:当用户第一次发送请求当时候,容器判断是否已经创建过servlet对象,由于是第一次,所以没有创建TOMCAT进行创建

初始化:创建完毕,调研init方法初始化

第二次请求,判断已经存在则无需进行实例化喝初始化

服务:初始化完毕,调用service方法,进行doget dopost方法去处理相应当请求

销毁:tomcat关闭,调用destory方法销毁servlet对象
 

6、SpringAop底层原理是什么?

Spring AOP的底层都是通过代理来实现的

  • 一种是基于JDK的动态代理
  • 一种是基于CgLIB的动态代理


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值