1.HashMap的本质是一个数组,每一个数组元素是一个单向的链表。
2. 请求转发与重定向的区别:
请求转发:
① 浏览器发出一次请求,获取到一次响应。
②浏览器地址栏未发生变化,仍然是第一次发出的请求。
③也称为服务期内跳转。
重定向:
①浏览器发出两次请求,获取到两次响应。
②浏览器地址栏发生变化,变为第二次请求的地址。
③也称为服务期外跳转。
3.最基本的八大数据类型:
byte, short, long, int, char, float, double, boolean
4.面向对象的特征:
继承、 封装、多态、抽象
5.重写与重载的区别:
重写:在父子类的继承中有相同的方法,唯一不同的是方法体,一般是父类
的该方法满足不了子类的需求所以才发生重写。
重载:在同一个类中,有着相同的方法名但参数的数据类型或参数个数不
同。
6.String 与 StringBuffer 的区别:
StringBuffer的内容和长度可以改变
7.Servlet 的生命周期:
Servlet被服务器实例化后,容器运行其 init
方法,请求到达时运行其 service
方法,service 方法自动派遣运行与请求对应的doXxx(doGet,doPost)方法等,当会话结束时将调用 destroy
方法。
8.ArrayList 、Vector、LinkedList区别:
ArrayList 和 Vector 都是使用数组方式存储数据,
LinkedList使用双向链表存储数据,
9. Collection 与 Collections 的区别:
Collection是集合类的上级接口,继承他的接口的主要有List 和 Set 。
Collections 是针对集合类的辅助类,它提供一系列静态方法实现对各种集合的搜索、排序、线程安全等操作。
10. final, finally, finalize的区别:
final 用于声明属性(常量)类,表示属性不可变,方法不可覆盖,类不可继承。
finally是异常处理结构语句的一部分,无论是否抛出异常,总是要执行。
finalize是Object 类的一种方法,在垃圾收集器执行的时候会调用被回收对象的此方法。
11.①接口可以继承接口
②抽象类可以实现接口。只需实现接口中的部分方法即可。如果不是抽象类,需要实现所有方法
③ 抽象类可以继承实体类,但前提是实体类必须有明确的构造函数。
12. 启动一个线程是调用 start 方法,使线程所代表的虚拟处理机代表可运行状态,这意味着他可以有 JVM 调度并执行。这并不意味着线程就会立即运行。run方法可以产生必须退出的标志来停止一个线程。
13. 线程的生命周期:新建状态、就绪状态、运行状态、阻塞状态、死亡状态。
14 .线程同步的方法:
wait() :使一个线程处于等待状态 。
sleep() :使一个正在运行的线程处于睡眠状态 。
notify():唤醒一个处于等待状态的线程 。
15.同步和异步:
同步:可以保证线程间的数据实时的进行数据交换。
异步:如果业务上不要求数据进行实时的交换,可以通过交换文件或者直接进行数据交换。
16.数据连接池的工作机制:
J2EE 服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接池驱动程序会返回一个未使用的池连接并将其标记为忙。如果当前没有空闲连接,池驱动程序就新建一定数量的连接,新建连接的数量有配置参数决定。当使用的池连接调用完成后,池驱动程序将此连接标记为空闲,其他调用就可以使用这个连接。
17.数组里没有length()方法,在数组中要表示长度,用size()。
String 中有length()放法,来表示其长度。
18.集合set 里的方法是不能重复的,用迭代器 iterator 遍历来查看重复与否。
19
随心笔记
最新推荐文章于 2024-06-01 14:23:42 发布