面试题 人人车一次面试总结
面试时间:2018/7/24(周二)上午 11:00
面试岗位:JAVA 方向
面试总结:
1、String 的缓存机制了解吗?那么 Integer 的缓存呢?
判断 new Integer(1) == Integer.valueOf("1") 的结果。(false)
public class Test {
public static void main(String[] args) {
Integer a = new Integer(1);
Integer b = Integer.valueOf(1);
Integer c = Integer.valueOf("1");
// false
System.out.println(a == b);
// false
System.out.println(a == c);
// true
System.out.println(b == c);
}
}
2、String、StringBuffer、StringBuilder 之间的区别?
3、多线程知识,有两个线程 t1、t2,如何实现 t1 和 t2 执行完后,主线程才执行。
4、谈谈线程安全是什么,线程安全如何实现的,如何保证线程安全。
5、并行处理和多线程处理的区别?
6、谈谈线程的生命周期?多线程如何实现的。线程池中的具体方法。(Executor)
7、反射了解吗,反射中 class.getMethods() 和 class.getDeclaredMethods() 的区别?
8、Java 中的代理模式和 Spring 中的代理模式有什么区别?(Proxy 和 Cglib)
9、网络的知识,http 协议了解吗,http 下面的协议是 TCP 还是 UDP?(TCP)
10、单链表的实现,如何删除一个节点。
11、学生表和成绩表中如何查询单科成绩前 10 名的学生信息。
12、死锁的具体应用场景。