當(dāng)一個對象沒有被任何對象引用,就證明這個對象沒有用,那么成為了被回收對象了。 判斷對象是否是垃圾的方法有兩種:引用計數(shù)法、可達(dá)性分析 1.對象回收 1.1引用計數(shù)法算法 引用...
當(dāng)一個對象沒有被任何對象引用,就證明這個對象沒有用,那么成為了被回收對象了。 判斷對象是否是垃圾的方法有兩種:引用計數(shù)法、可達(dá)性分析 1.對象回收 1.1引用計數(shù)法算法 引用...
1. 注解 注解入門 Annotation 是 JDK 5 開始引入的新技術(shù)。 Annotation 的作用:不是程序本身,可以對程序作出解釋,這一點(diǎn)和注釋(comment)...
線程thread的狀態(tài)有六種:new、terminal、runnable、waiting、timed_waiting、block 它們的關(guān)系圖如下: 代碼測試: 關(guān)于Lock...
大家好,我是冰河~~ 最近經(jīng)常有讀者問我:冰河,線程到底是按照怎樣的順序執(zhí)行的呀?為了同一回答大家的這個問題,今天我就單獨(dú)寫一篇文章吧。好了,不多說了,進(jìn)入今天的正題。 一、...
new一個對象過程中發(fā)生了什么? 1.確認(rèn)類元信息是否存在。當(dāng) JVM 接收到 new 指令時,首先在 metaspace 內(nèi)檢查需要創(chuàng)建的類元信息是否存在。 若不存在,那么...
業(yè)精于勤而荒于嬉,行成于思而毀于隨。 java內(nèi)存模型 java內(nèi)存模型(java memory model)是一種規(guī)范,是解決多線程在用共享內(nèi)存時,因?yàn)?級緩存,編譯器重排...
前言 類加載器屬于JVM的一個重要知識點(diǎn),也是Java安全里命令執(zhí)行、webshell管理器編寫的常用技術(shù)。 類加載器簡介 我們知道java源文件在運(yùn)行前會被編譯為class...
一、Semaphore Semaphore是一種在多線程環(huán)境下使用的設(shè)施,該設(shè)施負(fù)責(zé)協(xié)調(diào)各個線程,以保證它們能夠正確、合理的使用公共資源的設(shè)施,也是操作系統(tǒng)中用于控制進(jìn)程同步...