鍦ㄥ绾跨▼鐜涓嬶紝濡備綍澶勭悊classcastexception
鍦ㄥ绾跨▼鐜涓嬶紝澶勭悊ClassCastException鐨勬柟娉曚富瑕佹湁浠ヤ笅鍑犵锛?/p>
- 鍚屾浠g爜鍧楋細鍦ㄦ秹鍙婄被鍨嬭浆鎹㈢殑鍦版柟浣跨敤鍚屾浠g爜鍧楁潵淇濊瘉绾跨▼瀹夊叏锛岀‘淇濆彧鏈変竴涓嚎绋嬭兘澶熻繘琛岀被鍨嬭浆鎹㈡搷浣溿€?/li>
synchronized (lock) {
// 绫诲瀷杞崲鎿嶄綔
}
- 浣跨敤绾跨▼瀹夊叏鐨勯泦鍚堢被锛氫娇鐢ㄧ嚎绋嬪畨鍏ㄧ殑闆嗗悎绫伙紙濡侰oncurrentHashMap銆丆opyOnWriteArrayList锛夋潵瀛樺偍鏁版嵁锛岄伩鍏嶅湪澶氱嚎绋嬬幆澧冧笅鍙戠敓绫诲瀷杞崲寮傚父銆?/li>
ConcurrentHashMap<String, Object> map = new ConcurrentHashMap<>();
map.put("key", object);
Object value = map.get("key");
- 浣跨敤鍘熷瓙绫伙細浣跨敤鍘熷瓙绫伙紙濡侫tomicInteger銆丄tomicReference锛夋潵淇濊瘉鍘熷瓙鎬ф搷浣滐紝閬垮厤鍦ㄧ被鍨嬭浆鎹㈣繃绋嬩腑鍙戠敓骞跺彂闂銆?/li>
AtomicInteger atomicInteger = new AtomicInteger(0);
int value = atomicInteger.getAndIncrement();
- 浣跨敤绾跨▼瀹夊叏鐨勫伐鍏风被锛氫娇鐢ㄧ嚎绋嬪畨鍏ㄧ殑宸ュ叿绫伙紙濡係emaphore銆丆ountDownLatch锛夋潵鎺у埗绾跨▼鐨勮闂『搴忥紝纭繚绫诲瀷杞崲鎿嶄綔鐨勯『搴忔纭€?/li>
Semaphore semaphore = new Semaphore(1);
semaphore.acquire();
// 绫诲瀷杞崲鎿嶄綔
semaphore.release();
閫氳繃浠ヤ笂鏂规硶锛屽彲浠ュ湪澶氱嚎绋嬬幆澧冧笅閬垮厤ClassCastException寮傚父鐨勫彂鐢燂紝纭繚绋嬪簭鐨勭ǔ瀹氭€у拰鍙潬鎬с€?/p>