我已經分配了在「高級」Java課程中創建NIO持久性陣列的任務。這個問題不是那麼多,'如何'要做到這一點,但'什麼'暗示了「NIO持久」。對我來說這是一個新概念;到目前爲止我明白,基本上這只是意味着不是將代碼中的信息動態存儲在典型數組中,而是將數組的信息以字節的形式存儲在磁盤上,並以預定義的大小塊存儲。我感到困惑的是你如何從你試圖存儲的信息中獲得字節,然後如何通過Java的NIO將這些字節寫入文件?NIO持久性陣列:Java
TL; DR - 有人可以解釋一個Java NIO持久性陣列簡而言之?我應該如何着手從頭開始構建一個?
感謝您提前發表任何評論!
編輯:這裏是委派描述,一個字一個字:
目的
熟悉Java的NIO API。
要求
使用Java的NIO創建一個PersistentArray類。該類應該 支持以下方法:
靜態無效創建(字符串文件名,INT緩衝區大小) - 創建一個空的 持久陣列
靜態無效刪除(字符串文件名) - 刪除持久陣列
PersistentArray open(String fileName) - 打開與 持久數組關聯的文件,併爲gets和 puts準備持久數組。 (int bufferID,Buffer buffer) - 將緩衝區存儲在 bufferID的位置(請注意緩衝區大小必須與創建數組時使用的大小 相同)。
Buffer get(int bufferID) - 給定緩衝區ID,檢索緩衝區 ,該緩衝區先前存儲在與bufferID相關聯的位置。
int getNextID() - 返回一個超過存儲緩衝區時使用的最大ID的最大值 。
空隙接近() - 關閉與持久性陣列
而且相關聯的文件,創建示出所有的方法表現爲預期JUnit測試。
與老師複習您的工作。
感謝您的洞察力,我會讀一下NIO:] –
開始代碼我會說,你會了解更多。代碼*是*設計。 – zengr