您好,登錄后才能下訂單哦!
這篇文章主要介紹了java中io流面試題有哪些,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
Java主要應用于:1. web開發;2. Android開發;3. 客戶端開發;4. 網頁開發;5. 企業級應用開發;6. Java大數據開發;7.游戲開發等。
1.什么是IO流
它是一種數據的流從源頭流到目的地。比如文件拷貝,輸入流和輸出流都包括了。輸入流從文件中讀取數據存儲到進程(process)中,輸出流從進程中讀取數據然后寫入到目標文件。
2.java中有幾種類型的流
字符流和字節流。字節流繼承inputStream和OutputStream,字符流繼承自InputSteamReader和OutputStreamWriter。
3.字節流如何轉為字符流
字節輸入流轉字符輸入流通過 InputStreamReader 實現,該類的構造函數可以傳入 InputStream 對象。
字節輸出流轉字符輸出流通過 OutputStreamWriter 實現,該類的構造函數可以傳入 OutputStream 對象。
4.字節流與字符流的區別
以字節為單位輸入輸出數據,字節流按照8位傳輸
以字符為單位輸入輸出數據,字符流按照16位傳輸
5.談談Java IO里面的常見類,字節流,字符流、接口、實現類、方法阻塞
答:輸入流就是從外部文件輸入到內存,輸出流主要是從內存輸出到文件。
IO里面常見的類,第一印象就只知道IO流中有很多類,IO流主要分為字符流和字節流。字符流中有抽象類InputStream和OutputStream,它們的子類FileInputStream,FileOutputStream,BufferedOutputStream等。字符流BufferedReader和Writer等。都實現了Closeable, Flushable, Appendable這些接口。程序中的輸入輸出都是以流的形式保存的,流中保存的實際上全都是字節文件。
java中的阻塞式方法是指在程序調用改方法時,必須等待輸入數據可用或者檢測到輸入結束或者拋出異常,否則程序會一直停留在該語句上,不會執行下面的語句。比如read()和readLine()方法。
6.簡述File類的基本功能
處理文件和獲取文件信息,文件或文件夾的管理
除了讀寫文件內容其他的都可以做
7.什么是 java 序列化,如何實現 java 序列化?
序列化就是一種用來處理對象流的機制,所謂對象流也就是將對象的內容進行流化。可以對流化后的對象進行讀寫操作,也可將流化后的對象傳輸于網絡之間。序列化是為了解決在對對象流進行讀寫操作時所引發的問題。序 列 化 的 實 現 : 將 需 要 被 序 列 化 的 類 實 現 Serializable 接 口 , 該 接 口 沒 有 需 要 實 現 的 方 法 , implements Serializable 只是為了標注該對象是可被序列化的,然后使用一個輸出流(如:FileOutputStream)來構造一個 ObjectOutputStream(對象流)對象,接著,使用 ObjectOutputStream 對象的 writeObject(Object obj)方法就可以將參數為 obj 的對象寫出(即保存其狀態),要恢復的話則用輸入流。
8.FileInputStream和FileOutputStream是什么
這是在拷貝文件操作的時候,經常用到的兩個類。在處理小文件的時候,它們性能表現還不錯,在大文件的時候,最好使用BufferedInputStream (或 BufferedReader) 和 BufferedOutputStream (或 BufferedWriter)
實例:
public class InputAndOutputBuffering { public static void main(String args[]) throws IOException { FileInputStream fistream = new FileInputStream("pqr.txt"); BufferedInputStream bistream = new BufferedInputStream(fistream); FileOutputStream fostream = new FileOutputStream("xyz.txt"); BufferedOutputStream bostream = new BufferedOutputStream(fostream); int temp; while( ( temp = bistream.read() ) != -1 ) { bostream.write(temp); System.out.print((char) temp); } bostream.close(); fostream.close(); bistream.close(); fistream.close(); } }
感謝你能夠認真閱讀完這篇文章,希望小編分享的“java中io流面試題有哪些”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。