Java基础
- 堆存放在哪里
在Java堆中。 - HashMap 了解吗?底层原理是什么?
HanshMap 线程不安全,早期实现数组加链表,现在是红黑树。 - hashcode 方法怎么实现的?
public int hashCode() {
int h = hash;
if (h == 0 && value.length > 0) {
char val[] = value;
for (int i = 0; i < value.length; i++) {
h = 31 * h + val[i];
}
hash = h;
}
return h;
}
以上是String方法中的源码。以31为权,用每一个ASCII码值进行运算,自然溢出等效取模。
- 线程池怎么创建的?
线程池的创建:Executor 接口,ThreadPoolExecutor 方式创建,后者使用更广泛。 - equal比较的是什么?
- NIO了解吗?
MySQL
- 索引;联合索引怎么用?
数据结构
- 排序了解吗?有哪些排序? 说一下堆排序?快速排序原理是什么?时间复杂度是多少,什么情况下最坏?一般选取第几个开始排序?
计算机网络
- 七层协议了解吗? TCP协议的特点,为什么是可靠的?
- Cookie、Seeion了解吗?区别?为什么要有Cookie直接用Session不可以吗?