Rumah > Java > javaTutorial > Apakah pelbagai mekanisme JVM dalam java

Apakah pelbagai mekanisme JVM dalam java

PHPz
Lepaskan: 2023-05-26 17:48:40
ke hadapan
952 orang telah melayarinya

1. Mekanisme pemuatan kelas

dibahagikan kepada pemuatan, pengesahan, penyediaan, penghuraian, pemulaan, penggunaan dan pemunggahan.

(1) Memuatkan

mencari cakera keras dan membaca fail bytecode melalui IO Ia akan dimuatkan hanya apabila kelas digunakan, contohnya, memanggil main(). kaedah kelas, objek baharu, dsb., semasa fasa pemuatan, objek java.lang.Class yang mewakili kelas ini akan dijana dalam memori, yang berfungsi sebagai pintu masuk akses kepada pelbagai data kelas ini dalam kawasan kaedah.

(2) Sahkan

Sahkan ketepatan fail bytecode.

(3) Sediakan

untuk memperuntukkan memori kepada pembolehubah statik kelas dan memberikannya nilai lalai.

(4) Parse

Ganti rujukan simbolik dengan rujukan langsung Peringkat ini akan menggantikan beberapa kaedah statik (rujukan simbolik, seperti kaedah main() dengan penunjuk ke memori di mana data berada. disimpan atau Mengendalikan, dsb. (rujukan langsung), ini adalah apa yang dipanggil proses pemautan statik (selesai semasa pemuatan kelas), pemautan dinamik selesai semasa menjalankan program untuk menggantikan rujukan simbolik dengan rujukan langsung, pelajaran seterusnya akan bercakap tentang pautan dinamik.

(5) Permulaan

2. Mekanisme perwakilan ibu bapa

Mulakan pembolehubah statik kelas kepada nilai yang ditentukan dan laksanakan blok kod statik .

Pemuat kelas aplikasi AppClassLoader memuatkan kod sumber mekanisme delegasi induk bagi kelas Kaedah loadClass AppClassLoader akhirnya akan memanggil kaedah loadClass kelas induknya ClassLoader Logik umum kaedah ini adalah seperti berikut:

Pertama, Periksa sama ada kelas dengan nama yang dinyatakan telah dimuatkan Jika ia telah dimuatkan, tidak perlu memuatkannya semula dan kembali terus.

Jika kelas ini belum dimuatkan, kemudian semak sama ada terdapat pemuat induk, jika terdapat pemuat induk, ia akan dimuatkan oleh pemuat induk (iaitu, panggil parent.loadClass(name, false );). Atau hubungi pemuat kelas bootstrap untuk memuatkan.

Jika pemuat induk mahupun pemuat kelas bootstrap tidak menemui kelas yang ditentukan, maka kaedah findClass pemuat kelas semasa dipanggil untuk melengkapkan pemuatan kelas.

3. Mekanisme perwakilan tanggungjawab penuh

"Tanggungjawab penuh" bermaksud apabila ClassLoder memuatkan kelas, melainkan ClassLoder lain digunakan secara eksplisit, kelas bergantung dan dirujuk kelas juga dimuatkan oleh ClassLoder ini.

Atas ialah kandungan terperinci Apakah pelbagai mekanisme JVM dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan