hashtable\vector 是线程同步的
hashmap arraylist是线程非同步的
同步指的是多个人来操作这个东西只能一个一个排队来, 非同步就是大家可以同时操作;高方法多线程的场景如果非同步 就有可能导致大家共同操作一个数据的问题。
比如 你的银行卡是一个类的对象,现在有100块,你在一个取款机取款读到卡里钱是100再取100 =0余额,你妈妈也同时再给这个卡存款 由于并发和你同时进行 读到卡里钱100+100=200,最后应该写回数据库 到底0还是200呢? 是不是都不对,如果整个系统都是一个程序内,那就是2个线程非同步情况。 同步后就不会有这样问题,你操作完了,你妈妈才能操作。
当然这里只是模拟简单例子,实际情况会更复杂呵呵。