java面试(二)

1、java常见的容器

      几乎所有的容器都继承了Collecton接口,包括List、Set、Queue、Map

      List包括Vector、ArrayList、LinkedList,      Set包括HashSet、TreeSet,       Queue包括PriorityQueue

      Map包括HashMap、TreeMap

 

2、HashMap、HashTable、TreeMap之间的区别

      HashMap的键值可以为空,HashTable不可以;一边使用HashMap,如果键值对中key是有序的,使用TreeMap较为方便。

 

3、HashMap的实现原理

      首先将键key映射为hashcode,所有的值通过一个数组组成,如果hashcode已经被占用,则通过链表将其链接。

 

4、ArrayList和LinkedList的区别

      ArrayList底层是数组实现,可以实现随机访问;LinkedList底层是链表实现,不可以随机访问;

      Array是固定了数组大小。

 

5、ArrayList和Vector的区别

      在多线程中ArrayList是不安全的,而Vector实现了线程同步,是安全的。

 

6、守护线程

      守护线程是服务线程,用来服务其他的线程

      

posted @ 2019-10-10 15:54  彩色的梦  阅读(131)  评论(0编辑  收藏  举报