1.servlet的生命周期 :
一、百度百科 :
1、客户端请求servlet;
2、加载servlet类到内存;
3、实例化并调用init()方法初始化servlet;
4、调用service()方法;
5、加载和实例化servlet。
二、菜鸟教程 :
1、servlet调用init()方法进行初始化;
2、service调用service()方法处理客户端请求;
3、service调用destroy()方法终止;
4、JVM垃圾回收器对servlet进行垃圾回收。
2、List的子类 :
一、ArrayList子类 :
1、底层数据结构是数组;
2、查询快,增删慢;
3、线程不安全,效率高;
4、add()添加元素,get(index)获取元素;
二、Vertor :
1、底层数据结构是数组;
2、查询快,增删慢;
3、线程安全,效率低;
4、addElement()添加元素,elementAt(index)获取元素;
三、Linkedlist :
1、底层数据结构是链表;
2、查询慢,增删快;
3、线程不安全,效率高;
4、addFirst()添加在首,addLast()添加在尾,getFirst(),getLast()获取元素,removeFirst(),removeLast()删除元素;
3、for遍历与迭代器遍历的区别 :
一、iterator迭代器:
1、适用于连续内存存储方式,例如数组,ArrayList;
2、优点 : 可以实现一边遍历一边删除;
3、只能从头开始遍历;
二、for each遍历:
1、底层基于iterator实现,也是从头开始遍历,但是效率会慢与iterator迭代,因为多出类型转换;
2、不允许一边遍历一边删除,会抛出异常;
三、for 遍历 :
1、优点:可以从指定位置遍历,性能好;
2、缺点 :会有额外的代码产生;而且不能一边遍历一边删除,否者会抛出异常;