Java的认识
基础 Java怎么运行? jre和jdk区别? jdk包含了jre 成员变量和局部变量? stringBuffer,StringBuilder,string?为什么一个安全一个不安全 StringBuffer几乎所有的方法都使用synchronized实现了同步,线程比较安全,在多线程系统中可以保证数据同步,但是效率比较低;而StringBuilder 没有实现同步,线程不安全,在多线程系统中不能使用 StringBuilder,但是效率比较高。 runnable和callable区别? post 请求和 get 请求的区别? 过滤器拦截器 aop 有哪些相同和区别 se io 流 怎么创建多线程 数据库多表查询 jdbc? 线程创建方式 线程池 xml和json的了解 cookie和session区别 sql连接方式 线程生命周期,各个状态如何转换 spring注入方式 voliate? 索引,怎么创建,什么时候会失效 java内存泄露问题 sql聚合函数 run和start区别 arraylist和linkedlist区别 jvm内存如何分配 object的公共方法 aop和ioc synchronize和Lock区别 子查询的聚合查询如何实现,具体代码 hsahmap,hashtable,treemap 创建线程池的哪几种方式 反射,如何获取属性和方法,哪几种方式?具体调用方法 servlet生命周期 堆和栈的区别 sql连接方式1.哪些集合?
List,set
2.hashmap和treemap区别?
hashmap用于增删和查找
treemap用于有序key的遍历
3.hashmap怎么遍历?
1)单独遍历key Set keySet()
2)遍历每一组键值对 Set entrySet()
3)单独遍历value(这个操作不常用)
Collection values()
将所有的value以一个集合的形式返回。
4.迭代器怎么遍历
集合提供了统一的遍历方式:迭代器模式
Iterator iterator()
迭代器遍历集合遵循的步骤:问->取->删。其中删除不是必须操作
//获取迭代器
Iterator it = c.iterator();
while(it.hasNext()){
String e = (String)it.next();
System.out.println(e);
if("#".equals(e)){
// c.remove(e);
it.remove();
}
}
5.foreach怎么遍历?
6.基本类型和引用类型的关联,自动拆装箱怎么回事?
int a = 123;
//触发了编译器的自动装箱特性,编译器会补充代码将基本类型转换为包装类
Integer i = a;
// Integer i = Integer.valueOf(a);//编译器改好的样子
//触发了自动拆箱特性,编译器会补充代码将包装类转换为基本类型
a = i;
// a = i.intValue();//编译器改好的样子


