1、int 和 Integer区别
int:是基本类型,默认值为0,一般用于数值计算
Integer:int的包装类,作为对象使用,包装里一个int类型的字段,默认值为null,大多用于类型转换和需要对int作为对象使用时出现。
2、HashMap和HashTable区别
HashMap HashTable的轻量级实现,非线程安全的,在多线程情况下需要同步,并且允许null的key和value。
HashTable 线程安全,不允许null的key和value,不推荐使用。
附加:HashMap的同步问题可通过Collections的一个静态方法得到解决:
Map Collections.synchronizedMap(Map m)
这个方法返回一个同步的Map,这个Map封装了底层的HashMap的所有方法,使得底层的HashMap即使是在多线程的环境中也是安全的。
3、String和StringBuffer区别 stringbuilder
string:固定长度,创建后不可变。进行修改时需要附加新的对象完成
stringBuffer:可变长度 (待完成)
4、运行异常和一般异常的定义,及区别
5、short s1=1;s1=s1+1;是否正确?short s1=1;s1+=1;是否正确?
6、Math.round(11.5)是多少?Math.round(-11.5)是多少?
Math.round(11.5)返回(long)12,Math.round(-11.5)返回(long)-11;
7、线程启动是用run(),还是start(),两者区别是什么?
8、servlet生命周期
生命全过程:
加载ClassLoader
实例化new
初始化init(ServletConfig)
处理请求servicedoGetdoPost
退出服务destroy()
☆只有一个对象
☆API中的过程:
init()//只执行一次,第一次初始化的时候
publicvoidinit(ServletConfigconfig)throwsServletException
service()
publicvoidservice(ServletRequestreq,ServletResponseres)throwsServletException,java.io.IOException
destroy()//webapp退出的时候
publicvoiddestroy()
9、字符进行编码转换的方式
Stringstr=rs.getString();
str=newString(str.getBytes("iso8859-1"),"gb2312");
10、接口是否可以继承接口?抽象类是否可以继承接口?抽象类是否可以继承实体类?
11、list, set, Map继承自哪里?区别是什么?
答:List,Set是,Map不是。
如图:
Collection
├List
│├LinkedList
│├ArrayList
│└Vector
│ └Stack
└Set
Map
├Hashtable
├HashMap
└WeakHashMap
Collection是最基本的集合接口,一个Collection代表一组Object,即Collection的元素。一些Collection允许相同的元素而另一些不行。一些能排序而另一些不行。Java JDK不能提供直接继承自Collection的类,Java JDK提供的类都是继承自Collection的"子接口",如:List和Set。
注意:Map没有继承Collection接口,Map提供key到value的映射。一个Map中不能包含相同key,每个key只能映射一个value。Map接口提供3种集合的视图,Map的内容可以被当做一组key集合,一组value集合,或者一组key-value映射。
详细介绍:
List特点:元素有放入顺序,元素可重复
Map特点:元素按键值对存储,无放入顺序
Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的)
List接口有三个实现类:LinkedList,ArrayList,Vector
LinkedList:底层基于链表实现,链表内存是散乱的,每一个元素存储本身内存地址的同时还存储下一个元素的地址。链表增删快,查找慢
ArrayList和Vector的区别:ArrayList是非线程安全的,效率高;Vector是基于线程安全的,效率低
Set接口有两个实现类:HashSet(底层由HashMap实现),LinkedHashSet
SortedSet接口有一个实现类:TreeSet(底层由平衡二叉树实现)
Query接口有一个实现类:LinkList
Map接口有三个实现类:HashMap,HashTable,LinkeHashMap
HashMap非线程安全,高效,支持null;HashTable线程安全,低效,不支持null
SortedMap有一个实现类:TreeMap
其实最主要的是,list是用来处理序列的,而set是用来处理集的。Map是知道的,存储的是键值对
set 一般无序不重复.map kv 结构 list 有序
12、抽象方法是否可以用static , native , synchronized?