Rumah  >  Artikel  >  Java  >  Apakah perbezaan antara io dan nio dalam java

Apakah perbezaan antara io dan nio dalam java

PHPz
PHPzke hadapan
2023-05-13 15:04:062727semak imbas

1 Perbezaan pertama antara Java IO dan NIO ialah IO berorientasikan aliran dan NIO berorientasikan penimbal.

Java IO adalah berorientasikan strim yang bermaksud bahawa satu atau lebih bait boleh dibaca daripada strim pada satu-satu masa. Berapa banyak bait untuk dibaca daripada aliran terpulang sepenuhnya kepada pengaturcara. Bait ini tidak boleh dicache di mana-mana sahaja, iaitu, anda tidak boleh mengalihkan data ke hadapan atau ke belakang daripada strim. Jika anda benar-benar perlu memindahkan data, anda perlu cache data dalam penimbal terlebih dahulu.

Pandangan Java NIO Buffer sedikit berbeza. Apabila data dibaca ke dalam penimbal, penimbal akan diproses kemudian. Anda boleh mengalihkan data dalam penimbal jika anda perlu; ini memberikan pengaturcara lebih fleksibiliti dalam pemprosesan. Walau bagaimanapun, anda mesti menyemak bahawa penimbal mengandungi semua data yang anda perlukan untuk memproses. Selain itu, anda mesti memastikan bahawa apabila data baca tiba dalam penimbal, anda tidak boleh menulis ganti data yang tidak diproses.

Menyekat dan tidak menyekat IO

2 Pelbagai strim dalam Java IO disekat Java NIO ialah mod tidak menyekat untuk memastikan bahawa rangkaian memerlukan membaca daripada saluran Dapatkan data.

Pelbagai strim dalam Java IO disekat, iaitu, apabila kaedah read() dan write() dipanggil, thread akan disekat sehingga data dibaca atau ditulis sepenuhnya . Pada masa ini, benang memproses strim tidak akan dapat diselesaikan.

Mod tidak menyekat Java NIO memastikan bahawa urutan meminta untuk membaca data daripada saluran Saluran tidak boleh digunakan sehingga itu, atau jika tiada data tersedia pada masa ini, tiada apa yang dilakukan. Daripada menahan blok sehingga data boleh dibaca, di sini benang boleh melakukan perkara lain.

Apakah jenis data asas Java?

Jenis data asas Java dibahagikan kepada:

1, digunakan untuk mewakili jenis data integer .

2. Jenis titik terapung, jenis data yang digunakan untuk mewakili perpuluhan.

3. Jenis aksara Kata kunci jenis aksara ialah "char".

4. Jenis Boolean ialah jenis data asas yang mewakili nilai logik.

Atas ialah kandungan terperinci Apakah perbezaan antara io dan nio dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam