1.arraylist与vector的区别
1)两者都实现了list接口,都是通过数组实现的;vector是线程安全的,而arraylist非线程安全。
2)当list增加元素时,如果它认为不够的时候会进行扩容,vector也会,默认情况下是增加原来的一倍的数组长度,arraylist则增加原来的50%。
2.arraylist和linklist的区别以及使用
1)arraylist是数组实现的,可以认为是一个大小可变的动态数组。linklist是通过双向链表实现的。
2)linklist与arraylist相比增删速度较快,查找和修改值较慢。
3)linklist适合中间插入或者删除较多的时候使用,arraylist时候查询较多的时候使用。
2.error与exception的区别
error与exception都是继承与throwable类;error一般指与虚拟机有关的问题,比如系统崩溃、虚拟机错误、内存不足和方法调用栈溢出等,这种情况是程序无法处理的。exception表示程序可以处理的异常,可以获取并且可能恢复的。遇到这种情况应当处理异常,让程序恢复运行。
3.多线程实现的方法
1)继承thread类。
2)实现runable接口。
3)使用executorService、callable、future实现有返回结果的多线程。
4.线程的状态转化。
网友评论