2,描述hashmap的存储结构。如何实现多线程并发访问(修改)同一个对象时保证线程安全?请至少说出三种方法。
①、hashmap通过数组和链表来实现对数据的存储。 
②、hashmap是线程不安全的。
③、如何保证线程安全?
1)在对象/变量前加上  volatile    
2) 将对象/变量加上锁  synchronized   修饰。在线程中,使用同步方法或者同步块。
3) 使用带有线程安全的线程。如:继承  TimerTask   类实现线程,用   Timer.schedule   启动线程